@@ -22,6 +22,94 @@ Where to get it
22
22
* Binary installers on PyPI: http://pypi.python.org/pypi/pandas
23
23
* Documentation: http://pandas.pydata.org
24
24
25
+ pandas 0.8.1
26
+ ============
27
+
28
+ **Release date: ** July 22, 2012
29
+
30
+ **New features **
31
+
32
+ - Add vectorized, NA-friendly string methods to Series (#1621, #620)
33
+ - Can pass dict of per-column line styles to DataFrame.plot (#1559)
34
+ - Selective plotting to secondary y-axis on same subplot (PR #1640)
35
+ - Add new ``bootstrap_plot `` plot function
36
+ - Add new ``parallel_coordinates `` plot function (#1488)
37
+ - Add ``radviz `` plot function (#1566)
38
+ - Add ``multi_sparse `` option to ``set_printoptions `` to modify display of
39
+ hierarchical indexes (#1538)
40
+ - Add ``dropna `` method to Panel (#171)
41
+
42
+ **Improvements to existing features **
43
+
44
+ - Use moving min/max algorithms from Bottleneck in rolling_min/rolling_max
45
+ for > 100x speedup. (#1504, #50)
46
+ - Add Cython group median method for >15x speedup (#1358)
47
+ - Drastically improve ``to_datetime `` performance on ISO8601 datetime strings
48
+ (with no time zones) (#1571)
49
+ - Improve single-key groupby performance on large data sets, accelerate use of
50
+ groupby with a Categorical variable
51
+ - Add ability to append hierarchical index levels with ``set_index `` and to
52
+ drop single levels with ``reset_index `` (#1569, #1577)
53
+ - Always apply passed functions in ``resample ``, even if upsampling (#1596)
54
+ - Avoid unnecessary copies in DataFrame constructor with explicit dtype (#1572)
55
+ - Cleaner DatetimeIndex string representation with 1 or 2 elements (#1611)
56
+ - Improve performance of array-of-Period to PeriodIndex, convert such arrays
57
+ to PeriodIndex inside Index (#1215)
58
+ - More informative string representation for weekly Period objects (#1503)
59
+ - Accelerate 3-axis multi data selection from homogeneous Panel (#979)
60
+ - Add ``adjust `` option to ewma to disable adjustment factor (#1584)
61
+ - Add new matplotlib converters for high frequency time series plotting (#1599)
62
+ - Handling of tz-aware datetime.datetime objects in to_datetime; raise
63
+ Exception unless utc=True given (#1581)
64
+
65
+ **Bug fixes **
66
+
67
+ - Fix NA handling in DataFrame.to_panel (#1582)
68
+ - Handle TypeError issues inside PyObject_RichCompareBool calls in khash
69
+ (#1318)
70
+ - Fix resampling bug to lower case daily frequency (#1588)
71
+ - Fix kendall/spearman DataFrame.corr bug with no overlap (#1595)
72
+ - Fix bug in DataFrame.set_index (#1592)
73
+ - Don't ignore axes in boxplot if by specified (#1565)
74
+ - Fix Panel .ix indexing with integers bug (#1603)
75
+ - Fix Partial indexing bugs (years, months, ...) with PeriodIndex (#1601)
76
+ - Fix MultiIndex console formatting issue (#1606)
77
+ - Unordered index with duplicates doesn't yield scalar location for single
78
+ entry (#1586)
79
+ - Fix resampling of tz-aware time series with "anchored" freq (#1591)
80
+ - Fix DataFrame.rank error on integer data (#1589)
81
+ - Selection of multiple SparseDataFrame columns by list in __getitem__ (#1585)
82
+ - Override Index.tolist for compatibility with MultiIndex (#1576)
83
+ - Fix hierarchical summing bug with MultiIndex of length 1 (#1568)
84
+ - Work around numpy.concatenate use/bug in Series.set_value (#1561)
85
+ - Ensure Series/DataFrame are sorted before resampling (#1580)
86
+ - Fix unhandled IndexError when indexing very large time series (#1562)
87
+ - Fix DatetimeIndex intersection logic error with irregular indexes (#1551)
88
+ - Fix unit test errors on Python 3 (#1550)
89
+ - Fix .ix indexing bugs in duplicate DataFrame index (#1201)
90
+ - Better handle errors with non-existing objects in HDFStore (#1254)
91
+ - Don't copy int64 array data in DatetimeIndex when copy=False (#1624)
92
+ - Fix resampling of conforming periods quarterly to annual (#1622)
93
+ - Don't lose index name on resampling (#1631)
94
+ - Support python-dateutil version 2.1 (#1637)
95
+ - Fix broken scatter_matrix axis labeling, esp. with time series (#1625)
96
+ - Fix cases where extra keywords weren't being passed on to matplotlib from
97
+ Series.plot (#1636)
98
+ - Fix BusinessMonthBegin logic for dates before 1st bday of month (#1645)
99
+ - Ensure string alias converted (valid in DatetimeIndex.get_loc) in
100
+ DataFrame.xs / __getitem__ (#1644)
101
+ - Fix use of string alias timestamps with tz-aware time series (#1647)
102
+ - Fix Series.max/min and Series.describe on len-0 series (#1650)
103
+ - Handle None values in dict passed to concat (#1649)
104
+ - Fix Series.interpolate with method='values' and DatetimeIndex (#1646)
105
+ - Fix IndexError in left merges on a DataFrame with 0-length (#1628)
106
+ - Fix DataFrame column width display with UTF-8 encoded characters (#1620)
107
+ - Handle case in pandas.io.data.get_data_yahoo where Yahoo! returns duplicate
108
+ dates for most recent business day
109
+ - Avoid downsampling when plotting mixed frequencies on the same subplot (#1619)
110
+ - Fix read_csv bug when reading a single line (#1553)
111
+ - Fix bug in C code causing monthly periods prior to December 1969 to be off (#1570)
112
+
25
113
pandas 0.8.0
26
114
============
27
115
@@ -140,6 +228,7 @@ pandas 0.8.0
140
228
141
229
**API Changes **
142
230
231
+ - Rename `pandas._tseries ` to `pandas.lib `
143
232
- Rename Factor to Categorical and add improvements. Numerous Categorical bug
144
233
fixes
145
234
- Frequency name overhaul, WEEKDAY/EOM and rules with @
@@ -1661,92 +1750,58 @@ Thanks
1661
1750
pandas 0.3.0
1662
1751
============
1663
1752
1664
- This major release of pandas represents approximately 1 year of continuous
1665
- development work and brings with it many new features, bug fixes, speed
1666
- enhancements, and general quality-of-life improvements. The most significant
1667
- change from the 0.2 release has been the completion of a rigorous unit test
1668
- suite covering all of the core functionality.
1669
-
1670
1753
Release notes
1671
1754
-------------
1672
1755
1673
1756
**Release date: ** February 20, 2011
1674
1757
1675
1758
**New features / modules **
1676
1759
1677
- * DataFrame / DataMatrix classes
1678
-
1679
- * `corrwith ` function to compute column- or row-wise correlations between two
1680
- objects
1681
- * Can boolean-index DataFrame objects, e.g. df[df > 2] = 2, px[px > last_px] = 0
1682
- * Added comparison magic methods (__lt__, __gt__, etc.)
1683
- * Flexible explicit arithmetic methods (add, mul, sub, div, etc.)
1684
- * Added `reindex_like ` method
1685
-
1686
- * WidePanel
1687
-
1688
- * Added `reindex_like ` method
1689
-
1690
- * `pandas.io `: IO utilities
1691
-
1692
- * `pandas.io.sql ` module
1693
-
1694
- * Convenience functions for accessing SQL-like databases
1695
-
1696
- * `pandas.io.pytables ` module
1697
-
1698
- * Added (still experimental) HDFStore class for storing pandas data
1699
- structures using HDF5 / PyTables
1700
-
1701
- * `pandas.core.datetools `
1702
-
1703
- * Added WeekOfMonth date offset
1704
-
1705
- * `pandas.rpy ` (experimental) module created, provide some interfacing /
1706
- conversion between rpy2 and pandas
1760
+ - `corrwith ` function to compute column- or row-wise correlations between two
1761
+ DataFrame objects
1762
+ - Can boolean-index DataFrame objects, e.g. df[df > 2] = 2, px[px > last_px] = 0
1763
+ - Added comparison magic methods (__lt__, __gt__, etc.)
1764
+ - Flexible explicit arithmetic methods (add, mul, sub, div, etc.)
1765
+ - Added `reindex_like ` method
1766
+ - Added `reindex_like ` method to WidePanel
1767
+ - Convenience functions for accessing SQL-like databases in `pandas.io.sql `
1768
+ module
1769
+ - Added (still experimental) HDFStore class for storing pandas data
1770
+ structures using HDF5 / PyTables in `pandas.io.pytables ` module
1771
+ - Added WeekOfMonth date offset
1772
+ - `pandas.rpy ` (experimental) module created, provide some interfacing /
1773
+ conversion between rpy2 and pandas
1707
1774
1708
1775
**Improvements **
1709
1776
1710
- * Unit test coverage: 100% line coverage of core data structures
1711
-
1712
- * Speed enhancement to rolling_{median, max, min}
1713
-
1714
- * Column ordering between DataFrame and DataMatrix is now consistent: before
1715
- DataFrame would not respect column order
1716
-
1717
- * Improved {Series, DataFrame}.plot methods to be more flexible (can pass
1718
- matplotlib Axis arguments, plot DataFrame columns in multiple subplots, etc.)
1777
+ - Unit test coverage: 100% line coverage of core data structures
1778
+ - Speed enhancement to rolling_{median, max, min}
1779
+ - Column ordering between DataFrame and DataMatrix is now consistent: before
1780
+ DataFrame would not respect column order
1781
+ - Improved {Series, DataFrame}.plot methods to be more flexible (can pass
1782
+ matplotlib Axis arguments, plot DataFrame columns in multiple subplots,
1783
+ etc.)
1719
1784
1720
1785
**API Changes **
1721
1786
1722
- * Exponentially-weighted moment functions in `pandas.stats.moments `
1723
- have a more consistent API and accept a min_periods argument like
1724
- their regular moving counterparts.
1725
-
1726
- * **fillMethod ** argument in Series, DataFrame changed to **method **,
1727
- `FutureWarning ` added.
1728
-
1729
- * **fill ** method in Series, DataFrame/DataMatrix, WidePanel renamed to
1730
- **fillna **, `FutureWarning ` added to **fill **
1731
-
1732
- * Renamed **DataFrame.getXS ** to **xs **, `FutureWarning ` added
1733
-
1734
- * Removed **cap ** and **floor ** functions from DataFrame, renamed to
1735
- **clip_upper ** and **clip_lower ** for consistency with NumPy
1787
+ - Exponentially-weighted moment functions in `pandas.stats.moments ` have a
1788
+ more consistent API and accept a min_periods argument like their regular
1789
+ moving counterparts.
1790
+ - **fillMethod ** argument in Series, DataFrame changed to **method **,
1791
+ `FutureWarning ` added.
1792
+ - **fill ** method in Series, DataFrame/DataMatrix, WidePanel renamed to
1793
+ **fillna **, `FutureWarning ` added to **fill **
1794
+ - Renamed **DataFrame.getXS ** to **xs **, `FutureWarning ` added
1795
+ - Removed **cap ** and **floor ** functions from DataFrame, renamed to
1796
+ **clip_upper ** and **clip_lower ** for consistency with NumPy
1736
1797
1737
1798
**Bug fixes **
1738
1799
1739
- * Fixed bug in IndexableSkiplist Cython code that was breaking
1740
- rolling_max function
1741
-
1742
- * Numerous numpy.int64-related indexing fixes
1743
-
1744
- * Several NumPy 1.4.0 NaN-handling fixes
1745
-
1746
- * Bug fixes to pandas.io.parsers.parseCSV
1747
-
1748
- * Fixed `DateRange ` caching issue with unusual date offsets
1749
-
1750
- * Fixed bug in `DateRange.union `
1751
-
1752
- * Fixed corner case in `IndexableSkiplist ` implementation
1800
+ - Fixed bug in IndexableSkiplist Cython code that was breaking
1801
+ rolling_max function
1802
+ - Numerous numpy.int64-related indexing fixes
1803
+ - Several NumPy 1.4.0 NaN-handling fixes
1804
+ - Bug fixes to pandas.io.parsers.parseCSV
1805
+ - Fixed `DateRange ` caching issue with unusual date offsets
1806
+ - Fixed bug in `DateRange.union `
1807
+ - Fixed corner case in `IndexableSkiplist ` implementation
0 commit comments