Skip to content

Commit e2ad9b4

Browse files
committed
Merge branch 'period-join-sort-fix' of https://github.com/erbian/pandas into period-join-sort-fix
2 parents 0d8beaf + 9d86628 commit e2ad9b4

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

76 files changed

+1141
-533
lines changed

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
- [ ] closes #xxxx
22
- [ ] tests added / passed
3-
- [ ] passes ``git diff upstream/master --name-only -- '*.py' | flake8 --diff``
3+
- [ ] passes ``git diff upstream/master --name-only -- '*.py' | flake8 --diff`` (On Windows, ``git diff upstream/master -u -- "*.py" | flake8 --diff`` might work as an alternative.)
44
- [ ] whatsnew entry

.travis.yml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -35,61 +35,61 @@ matrix:
3535
language: generic
3636
env:
3737
- JOB="3.5_OSX" TEST_ARGS="--skip-slow --skip-network"
38-
- os: linux
38+
- dist: trusty
3939
env:
4040
- JOB="2.7_LOCALE" TEST_ARGS="--only-slow --skip-network" LOCALE_OVERRIDE="zh_CN.UTF-8"
4141
addons:
4242
apt:
4343
packages:
4444
- language-pack-zh-hans
45-
- os: linux
45+
- dist: trusty
4646
env:
4747
- JOB="2.7" TEST_ARGS="--skip-slow" LINT=true
4848
addons:
4949
apt:
5050
packages:
5151
- python-gtk2
52-
- os: linux
52+
- dist: trusty
5353
env:
5454
- JOB="3.5" TEST_ARGS="--skip-slow --skip-network" COVERAGE=true
5555
addons:
5656
apt:
5757
packages:
5858
- xsel
59-
- os: linux
59+
- dist: trusty
6060
env:
6161
- JOB="3.6" TEST_ARGS="--skip-slow --skip-network" PANDAS_TESTING_MODE="deprecate" CONDA_FORGE=true
6262
# In allow_failures
63-
- os: linux
63+
- dist: trusty
6464
env:
6565
- JOB="2.7_SLOW" TEST_ARGS="--only-slow --skip-network"
6666
# In allow_failures
67-
- os: linux
67+
- dist: trusty
6868
env:
6969
- JOB="2.7_BUILD_TEST" TEST_ARGS="--skip-slow" BUILD_TEST=true
7070
# In allow_failures
71-
- os: linux
71+
- dist: trusty
7272
env:
7373
- JOB="3.6_NUMPY_DEV" TEST_ARGS="--skip-slow --skip-network" PANDAS_TESTING_MODE="deprecate"
7474
# In allow_failures
75-
- os: linux
75+
- dist: trusty
7676
env:
7777
- JOB="3.6_DOC" DOC=true
7878
addons:
7979
apt:
8080
packages:
8181
- xsel
8282
allow_failures:
83-
- os: linux
83+
- dist: trusty
8484
env:
8585
- JOB="2.7_SLOW" TEST_ARGS="--only-slow --skip-network"
86-
- os: linux
86+
- dist: trusty
8787
env:
8888
- JOB="2.7_BUILD_TEST" TEST_ARGS="--skip-slow" BUILD_TEST=true
89-
- os: linux
89+
- dist: trusty
9090
env:
9191
- JOB="3.6_NUMPY_DEV" TEST_ARGS="--skip-slow --skip-network" PANDAS_TESTING_MODE="deprecate"
92-
- os: linux
92+
- dist: trusty
9393
env:
9494
- JOB="3.6_DOC" DOC=true
9595

AUTHORS.md

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
About the Copyright Holders
2+
===========================
3+
4+
* Copyright (c) 2008-2011 AQR Capital Management, LLC
5+
6+
AQR Capital Management began pandas development in 2008. Development was
7+
led by Wes McKinney. AQR released the source under this license in 2009.
8+
* Copyright (c) 2011-2012, Lambda Foundry, Inc.
9+
10+
Wes is now an employee of Lambda Foundry, and remains the pandas project
11+
lead.
12+
* Copyright (c) 2011-2012, PyData Development Team
13+
14+
The PyData Development Team is the collection of developers of the PyData
15+
project. This includes all of the PyData sub-projects, including pandas. The
16+
core team that coordinates development on GitHub can be found here:
17+
http://github.com/pydata.
18+
19+
Full credits for pandas contributors can be found in the documentation.
20+
21+
Our Copyright Policy
22+
====================
23+
24+
PyData uses a shared copyright model. Each contributor maintains copyright
25+
over their contributions to PyData. However, it is important to note that
26+
these contributions are typically only changes to the repositories. Thus,
27+
the PyData source code, in its entirety, is not the copyright of any single
28+
person or institution. Instead, it is the collective copyright of the
29+
entire PyData Development Team. If individual contributors want to maintain
30+
a record of what changes/contributions they have specific copyright on,
31+
they should indicate their copyright in the commit message of the change
32+
when they commit the change to one of the PyData repositories.
33+
34+
With this in mind, the following banner should be used in any source code
35+
file to indicate the copyright and license terms:
36+
37+
```
38+
#-----------------------------------------------------------------------------
39+
# Copyright (c) 2012, PyData Development Team
40+
# All rights reserved.
41+
#
42+
# Distributed under the terms of the BSD Simplified License.
43+
#
44+
# The full license is in the LICENSE file, distributed with this software.
45+
#-----------------------------------------------------------------------------
46+
```
47+
48+
Other licenses can be found in the LICENSES directory.
49+
50+
License
51+
=======
52+
53+
pandas is distributed under a 3-clause ("Simplified" or "New") BSD
54+
license. Parts of NumPy, SciPy, numpydoc, bottleneck, which all have
55+
BSD-compatible licenses, are included. Their licenses follow the pandas
56+
license.
57+

LICENSE

Lines changed: 24 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -1,87 +1,29 @@
1-
=======
2-
License
3-
=======
1+
BSD 3-Clause License
42

5-
pandas is distributed under a 3-clause ("Simplified" or "New") BSD
6-
license. Parts of NumPy, SciPy, numpydoc, bottleneck, which all have
7-
BSD-compatible licenses, are included. Their licenses follow the pandas
8-
license.
9-
10-
pandas license
11-
==============
12-
13-
Copyright (c) 2011-2012, Lambda Foundry, Inc. and PyData Development Team
14-
All rights reserved.
15-
16-
Copyright (c) 2008-2011 AQR Capital Management, LLC
3+
Copyright (c) 2008-2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
174
All rights reserved.
185

196
Redistribution and use in source and binary forms, with or without
20-
modification, are permitted provided that the following conditions are
21-
met:
22-
23-
* Redistributions of source code must retain the above copyright
24-
notice, this list of conditions and the following disclaimer.
25-
26-
* Redistributions in binary form must reproduce the above
27-
copyright notice, this list of conditions and the following
28-
disclaimer in the documentation and/or other materials provided
29-
with the distribution.
30-
31-
* Neither the name of the copyright holder nor the names of any
32-
contributors may be used to endorse or promote products derived
33-
from this software without specific prior written permission.
34-
35-
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS
36-
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
37-
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
38-
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
39-
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
40-
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
41-
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
42-
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
43-
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
44-
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
7+
modification, are permitted provided that the following conditions are met:
8+
9+
* Redistributions of source code must retain the above copyright notice, this
10+
list of conditions and the following disclaimer.
11+
12+
* Redistributions in binary form must reproduce the above copyright notice,
13+
this list of conditions and the following disclaimer in the documentation
14+
and/or other materials provided with the distribution.
15+
16+
* Neither the name of the copyright holder nor the names of its
17+
contributors may be used to endorse or promote products derived from
18+
this software without specific prior written permission.
19+
20+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21+
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
23+
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
24+
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
26+
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
27+
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
28+
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
4529
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
46-
47-
About the Copyright Holders
48-
===========================
49-
50-
AQR Capital Management began pandas development in 2008. Development was
51-
led by Wes McKinney. AQR released the source under this license in 2009.
52-
Wes is now an employee of Lambda Foundry, and remains the pandas project
53-
lead.
54-
55-
The PyData Development Team is the collection of developers of the PyData
56-
project. This includes all of the PyData sub-projects, including pandas. The
57-
core team that coordinates development on GitHub can be found here:
58-
http://github.com/pydata.
59-
60-
Full credits for pandas contributors can be found in the documentation.
61-
62-
Our Copyright Policy
63-
====================
64-
65-
PyData uses a shared copyright model. Each contributor maintains copyright
66-
over their contributions to PyData. However, it is important to note that
67-
these contributions are typically only changes to the repositories. Thus,
68-
the PyData source code, in its entirety, is not the copyright of any single
69-
person or institution. Instead, it is the collective copyright of the
70-
entire PyData Development Team. If individual contributors want to maintain
71-
a record of what changes/contributions they have specific copyright on,
72-
they should indicate their copyright in the commit message of the change
73-
when they commit the change to one of the PyData repositories.
74-
75-
With this in mind, the following banner should be used in any source code
76-
file to indicate the copyright and license terms:
77-
78-
#-----------------------------------------------------------------------------
79-
# Copyright (c) 2012, PyData Development Team
80-
# All rights reserved.
81-
#
82-
# Distributed under the terms of the BSD Simplified License.
83-
#
84-
# The full license is in the LICENSE file, distributed with this software.
85-
#-----------------------------------------------------------------------------
86-
87-
Other licenses can be found in the LICENSES directory.

asv_bench/benchmarks/hdfstore_bench.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,15 @@ def time_query_store_table(self):
9090
stop = self.df2.index[15000]
9191
self.store.select('table', where="index > start and index < stop")
9292

93+
def time_store_repr(self):
94+
repr(self.store)
95+
96+
def time_store_str(self):
97+
str(self.store)
98+
99+
def time_store_info(self):
100+
self.store.info()
101+
93102

94103
class HDF5Panel(object):
95104
goal_time = 0.2

ci/requirements-3.6.build

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@ python=3.6*
22
python-dateutil
33
pytz
44
nomkl
5-
numpy=1.12*
5+
numpy
66
cython

ci/requirements-3.6_DOC.run

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
ipython
22
ipykernel
33
ipywidgets
4-
sphinx
4+
sphinx=1.5*
55
nbconvert
66
nbformat
77
notebook

ci/requirements-3.6_NUMPY_DEV.build

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
11
python=3.6*
2-
python-dateutil
32
pytz
43
cython

ci/requirements-3.6_NUMPY_DEV.build.sh

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,7 @@ pip uninstall numpy -y
1111
PRE_WHEELS="https://7933911d6844c6c53a7d-47bd50c35cd79bd838daf386af554a83.ssl.cf2.rackcdn.com"
1212
pip install --pre --upgrade --timeout=60 -f $PRE_WHEELS numpy scipy
1313

14+
# install dateutil from master
15+
pip install -U git+git://github.com/dateutil/dateutil.git
16+
1417
true

doc/source/api.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@ HDFStore: PyTables (HDF5)
9999
HDFStore.append
100100
HDFStore.get
101101
HDFStore.select
102+
HDFStore.info
102103

103104
Feather
104105
~~~~~~~

doc/source/contributing.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -525,6 +525,12 @@ run this slightly modified command::
525525

526526
git diff master --name-only -- '*.py' | grep 'pandas/' | xargs flake8
527527

528+
Note that on Windows, ``grep``, ``xargs``, and other tools are likely
529+
unavailable. However, this has been shown to work on smaller commits in the
530+
standard Windows command line::
531+
532+
git diff master -u -- "*.py" | flake8 --diff
533+
528534
Backwards Compatibility
529535
~~~~~~~~~~~~~~~~~~~~~~~
530536

doc/source/ecosystem.rst

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -239,3 +239,14 @@ pandas own ``read_csv`` for CSV IO and leverages many existing packages such as
239239
PyTables, h5py, and pymongo to move data between non pandas formats. Its graph
240240
based approach is also extensible by end users for custom formats that may be
241241
too specific for the core of odo.
242+
243+
.. _ecosystem.data_validation:
244+
245+
Data validation
246+
---------------
247+
248+
`Engarde <http://engarde.readthedocs.io/en/latest/>`__
249+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
250+
251+
Engarde is a lightweight library used to explicitly state your assumptions abour your datasets
252+
and check that they're *actually* true.

doc/source/groupby.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1200,14 +1200,14 @@ Regroup columns of a DataFrame according to their sum, and sum the aggregated on
12001200
df
12011201
df.groupby(df.sum(), axis=1).sum()
12021202
1203-
.. _groupby.multicolumn_factorization
1203+
.. _groupby.multicolumn_factorization:
12041204

12051205
Multi-column factorization
12061206
~~~~~~~~~~~~~~~~~~~~~~~~~~
12071207

12081208
By using ``.ngroup()``, we can extract information about the groups in
12091209
a way similar to :func:`factorize` (as described further in the
1210-
:ref:`reshaping API <reshaping.factorization>`) but which applies
1210+
:ref:`reshaping API <reshaping.factorize>`) but which applies
12111211
naturally to multiple columns of mixed type and different
12121212
sources. This can be useful as an intermediate categorical-like step
12131213
in processing, when the relationships between the group rows are more

0 commit comments

Comments
 (0)