用法:
DataFrame.asof(where, subset=None)
返回
where
之前沒有任何 NaN 的最後一行。取最後一行(對於
where
中的每個元素,如果是列表)沒有任何 NaN。在DataFrame
的情況下,沒有 NaN 的最後一行隻考慮列的子集(如果不是None
)如果沒有好的值,則為 DataFrame 的 Series 或一係列 NaN 值返回 NaN
- where:日期或 array-like 個日期
返回最後一行之前的日期。
- subset:
str 或 array-like of str,默認
None
對於 DataFrame,如果不是
None
,則僅使用這些列來檢查 NaN。
- 標量、係列或數據幀
返回可以是:
標量:當
self
是係列且where
是標量時係列:當
self
是係列且where
是array-like 時,或者當self
是DataFrame 而where
是標量時DataFrame:當
self
是DataFrame 並且where
是array-like
返回標量、係列或數據幀。
參數:
返回:
注意:
假定日期已排序。如果不是這種情況,則引發。
例子:
一個係列和一個標量
where
。>>> s = pd.Series([1, 2, np.nan, 4], index=[10, 20, 30, 40]) >>> s 10 1.0 20 2.0 30 NaN 40 4.0 dtype:float64
>>> s.asof(20) 2.0
對於序列
where
,返回一個係列。第一個值是 NaN,因為where
的第一個元素在第一個索引值之前。>>> s.asof([5, 20]) 5 NaN 20 2.0 dtype:float64
不考慮缺失值。以下是
2.0
,而不是 NaN,即使 NaN 位於30
的索引位置。>>> s.asof(30) 2.0
考慮所有列
>>> df = pd.DataFrame({'a':[10, 20, 30, 40, 50], ... 'b':[None, None, None, None, 500]}, ... index=pd.DatetimeIndex(['2018-02-27 09:01:00', ... '2018-02-27 09:02:00', ... '2018-02-27 09:03:00', ... '2018-02-27 09:04:00', ... '2018-02-27 09:05:00'])) >>> df.asof(pd.DatetimeIndex(['2018-02-27 09:03:30', ... '2018-02-27 09:04:30'])) a b 2018-02-27 09:03:30 NaN NaN 2018-02-27 09:04:30 NaN NaN
考慮單個列
>>> df.asof(pd.DatetimeIndex(['2018-02-27 09:03:30', ... '2018-02-27 09:04:30']), ... subset=['a']) a b 2018-02-27 09:03:30 30.0 NaN 2018-02-27 09:04:30 40.0 NaN
相關用法
- Python pandas.DataFrame.assign用法及代碼示例
- Python pandas.DataFrame.asfreq用法及代碼示例
- Python pandas.DataFrame.astype用法及代碼示例
- Python pandas.DataFrame.apply用法及代碼示例
- Python pandas.DataFrame.add_prefix用法及代碼示例
- Python pandas.DataFrame.add用法及代碼示例
- Python pandas.DataFrame.all用法及代碼示例
- Python pandas.DataFrame.at_time用法及代碼示例
- Python pandas.DataFrame.append用法及代碼示例
- Python pandas.DataFrame.at用法及代碼示例
- Python pandas.DataFrame.agg用法及代碼示例
- Python pandas.DataFrame.add_suffix用法及代碼示例
- Python pandas.DataFrame.applymap用法及代碼示例
- Python pandas.DataFrame.aggregate用法及代碼示例
- Python pandas.DataFrame.axes用法及代碼示例
- Python pandas.DataFrame.abs用法及代碼示例
- Python pandas.DataFrame.any用法及代碼示例
- Python pandas.DataFrame.align用法及代碼示例
- Python pandas.DataFrame.ewm用法及代碼示例
- Python pandas.DataFrame.dot用法及代碼示例
注:本文由純淨天空篩選整理自pandas.pydata.org大神的英文原創作品 pandas.DataFrame.asof。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。