forked from pandas-dev/pandas
-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathv0.13.1.txt
117 lines (73 loc) · 2.87 KB
/
v0.13.1.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
.. _whatsnew_0131:
v0.13.1 (???)
-------------
This is a minor release from 0.13.0 and includes a number of API changes, several new features and
enhancements along with a large number of bug fixes.
Highlights include:
Several experimental features are added, including:
There are several new or updated docs sections including:
- :ref:`Tutorials<tutorials>`, a guide to community developed pandas tutorials.
- :ref:`Pandas Ecosystem<ecosystem>`, a guide to complementary projects built on top of pandas.
API changes
~~~~~~~~~~~
Prior Version Deprecations/Changes
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
These were announced changes in 0.13 or prior that are taking effect as of 0.13.1
Deprecations
~~~~~~~~~~~~
Enhancements
~~~~~~~~~~~~
- The ``ArrayFormatter`` for ``datetime`` and ``timedelta64`` now intelligently
limit precision based on the values in the array (:issue:`3401`)
Previously output might look like:
.. code-block:: python
age today diff
0 2001-01-01 00:00:00 2013-04-19 00:00:00 4491 days, 00:00:00
1 2004-06-01 00:00:00 2013-04-19 00:00:00 3244 days, 00:00:00
Now the output looks like:
.. ipython:: python
df = DataFrame([ Timestamp('20010101'),
Timestamp('20040601') ], columns=['age'])
df['today'] = Timestamp('20130419')
df['diff'] = df['today']-df['age']
df
- ``Panel.apply`` will work on non-ufuncs. See :ref:`the docs<basics.apply_panel>`.
.. ipython:: python
import pandas.util.testing as tm
panel = tm.makePanel(5)
panel
panel['ItemA']
Specifying an ``apply`` that operates on a Series (to return a single element)
.. ipython:: python
panel.apply(lambda x: x.dtype, axis='items')
A similar reduction type operation
.. ipython:: python
panel.apply(lambda x: x.sum(), axis='major_axis')
This is equivalent to
.. ipython:: python
panel.sum('major_axis')
A transformation operation that returns a Panel, but is computing
the z-score across the major_axis
.. ipython:: python
result = panel.apply(lambda x: (x-x.mean())/x.std(), axis='major_axis')
result
result['ItemA']
- ``Panel.apply`` operating on cross-sectional slabs. (:issue:`1148`)
.. ipython:: python
f = lambda x: (x-x.mean(1)/x.std(1))
result = panel.apply(f, axis = ['items','major_axis'])
result
result.loc[:,:,'ItemA']
This is equivalent to the following
.. ipython:: python
result = Panel(dict([ (ax,f(panel.loc[:,:,ax])) for ax in panel.minor_axis ]))
result
result.loc[:,:,'ItemA']
Experimental
~~~~~~~~~~~~
Bug Fixes
~~~~~~~~~
See :ref:`V0.13.1 Bug Fixes<release.bug_fixes-0.13.1>` for an extensive list of bugs that have been fixed in 0.13.1.
See the :ref:`full release notes
<release>` or issue tracker
on GitHub for a complete list of all API changes, Enhancements and Bug Fixes.