You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ewma(Series([1., None, 8.]), com=2., ignore_na=False) # new default
166
+
136
167
- Bug in passing a ``DatetimeIndex`` with a timezone that was not being retained in DataFrame construction from a dict (:issue:`7822`)
137
168
138
169
In prior versions this would drop the timezone.
@@ -580,12 +611,61 @@ Bug Fixes
580
611
- Bug in ``DataFrame.plot`` with ``subplots=True`` may draw unnecessary minor xticks and yticks (:issue:`7801`)
581
612
- Bug in ``StataReader`` which did not read variable labels in 117 files due to difference between Stata documentation and implementation (:issue:`7816`)
582
613
- Bug in ``StataReader`` where strings were always converted to 244 characters-fixed width irrespective of underlying string size (:issue:`7858`)
583
-
- Bug in ``expanding_cov``, ``expanding_corr``, ``rolling_cov``, ``rolling_cov``, ``ewmcov``, and ``ewmcorr``
614
+
615
+
- Bug in :func:`expanding_cov`, :func:`expanding_corr`, :func:`rolling_cov`, :func:`rolling_cor`, :func:`ewmcov`, and :func:`ewmcorr`
584
616
returning results with columns sorted by name and producing an error for non-unique columns;
585
617
now handles non-unique columns and returns columns in original order
586
618
(except for the case of two DataFrames with ``pairwise=False``, where behavior is unchanged) (:issue:`7542`)
587
619
- Bug in :func:`rolling_count` and ``expanding_*`` functions unnecessarily producing error message for zero-length data (:issue:`8056`)
588
620
- Bug in :func:`rolling_apply` and :func:`expanding_apply` interpreting ``min_periods=0`` as ``min_periods=1`` (:issue:`8080`)
621
+
- Bug in :func:`expanding_std` and :func:`expanding_var` for a single value producing a confusing error message (:issue:`7900`)
622
+
- Bug in :func:`rolling_std` and :func:`rolling_var` for a single value producing ``0`` rather than ``NaN`` (:issue:`7900`)
623
+
624
+
- Bug in :func:`ewmstd`, :func:`ewmvol`, :func:`ewmvar`, and :func:`ewmcov`
625
+
calculation of de-biasing factors when ``bias=False`` (the default).
626
+
Previously an incorrect constant factor was used, based on ``adjust=True``, ``ignore_na=True``,
627
+
and an infinite number of observations.
628
+
Now a different factor is used for each entry, based on the actual weights
629
+
(analogous to the usual ``N/(N-1)`` factor).
630
+
In particular, for a single point a value of ``NaN`` is returned when ``bias=False``,
631
+
whereas previously a value of (approximately) ``0`` was returned.
632
+
633
+
For example, consider the following pre-0.15.0 results for ``ewmvar(..., bias=False)``,
634
+
and the corresponding debiasing factors:
635
+
636
+
.. ipython:: python
637
+
638
+
s = Series([1., 2., 0., 4.])
639
+
640
+
.. code-block:: python
641
+
642
+
In [69]: ewmvar(s, com=2., bias=False)
643
+
Out[69]:
644
+
0 -2.775558e-16
645
+
1 3.000000e-01
646
+
2 9.556787e-01
647
+
3 3.585799e+00
648
+
dtype: float64
649
+
650
+
In [70]: ewmvar(s, com=2., bias=False) / ewmvar(s, com=2., bias=True)
651
+
Out[70]:
652
+
0 1.25
653
+
1 1.25
654
+
2 1.25
655
+
3 1.25
656
+
dtype: float64
657
+
658
+
Note that entry ``0`` is approximately 0, and the debiasing factors are a constant 1.25.
659
+
By comparison, the following 0.15.0 results have a ``NaN`` for entry ``0``,
660
+
and the debiasing factors are decreasing (towards 1.25):
0 commit comments