用法:
DataFrame.truncate(before=None, after=None, axis=None, copy=True)
在某个索引值之前和之后截断 Series 或 DataFrame。
这是基于高于或低于某些阈值的索引值的布尔索引的有用简写。
- before:日期,str,int
截断此索引值之前的所有行。
- after:日期,str,int
截断此索引值之后的所有行。
- axis:{0 或 ‘index’,1 或 ‘columns’},可选
要截断的轴。默认情况下截断索引(行)。
- copy:布尔值,默认为 True,
返回截断部分的副本。
- 调用者类型
截断的 Series 或 DataFrame。
参数:
返回:
注意:
如果被截断的索引仅包含日期时间值,则
before
和after
可以指定为字符串而不是时间戳。例子:
>>> df = pd.DataFrame({'A':['a', 'b', 'c', 'd', 'e'], ... 'B':['f', 'g', 'h', 'i', 'j'], ... 'C':['k', 'l', 'm', 'n', 'o']}, ... index=[1, 2, 3, 4, 5]) >>> df A B C 1 a f k 2 b g l 3 c h m 4 d i n 5 e j o
>>> df.truncate(before=2, after=4) A B C 2 b g l 3 c h m 4 d i n
DataFrame 的列可以被截断。
>>> df.truncate(before="A", after="B", axis="columns") A B 1 a f 2 b g 3 c h 4 d i 5 e j
对于 Series,只能截断行。
>>> df['A'].truncate(before=2, after=4) 2 b 3 c 4 d Name:A, dtype:object
truncate
中的索引值可以是日期时间或字符串日期。>>> dates = pd.date_range('2016-01-01', '2016-02-01', freq='s') >>> df = pd.DataFrame(index=dates, data={'A':1}) >>> df.tail() A 2016-01-31 23:59:56 1 2016-01-31 23:59:57 1 2016-01-31 23:59:58 1 2016-01-31 23:59:59 1 2016-02-01 00:00:00 1
>>> df.truncate(before=pd.Timestamp('2016-01-05'), ... after=pd.Timestamp('2016-01-10')).tail() A 2016-01-09 23:59:56 1 2016-01-09 23:59:57 1 2016-01-09 23:59:58 1 2016-01-09 23:59:59 1 2016-01-10 00:00:00 1
因为索引是一个仅包含日期的 DatetimeIndex,我们可以将
before
和after
指定为字符串。它们将在截断之前被强制转换为时间戳。>>> df.truncate('2016-01-05', '2016-01-10').tail() A 2016-01-09 23:59:56 1 2016-01-09 23:59:57 1 2016-01-09 23:59:58 1 2016-01-09 23:59:59 1 2016-01-10 00:00:00 1
请注意,
truncate
假定任何未指定的时间分量(午夜)的值为 0。这与部分字符串切片不同,后者返回任何部分匹配的日期。>>> df.loc['2016-01-05':'2016-01-10',:].tail() A 2016-01-10 23:59:55 1 2016-01-10 23:59:56 1 2016-01-10 23:59:57 1 2016-01-10 23:59:58 1 2016-01-10 23:59:59 1
相关用法
- Python pandas.DataFrame.truediv用法及代码示例
- Python pandas.DataFrame.transpose用法及代码示例
- Python pandas.DataFrame.transform用法及代码示例
- Python pandas.DataFrame.to_numpy用法及代码示例
- Python pandas.DataFrame.to_json用法及代码示例
- Python pandas.DataFrame.to_markdown用法及代码示例
- Python pandas.DataFrame.to_sql用法及代码示例
- Python pandas.DataFrame.to_xml用法及代码示例
- Python pandas.DataFrame.to_latex用法及代码示例
- Python pandas.DataFrame.to_pickle用法及代码示例
- Python pandas.DataFrame.to_string用法及代码示例
- Python pandas.DataFrame.to_csv用法及代码示例
- Python pandas.DataFrame.to_dict用法及代码示例
- Python pandas.DataFrame.to_clipboard用法及代码示例
- Python pandas.DataFrame.to_hdf用法及代码示例
- Python pandas.DataFrame.tz_localize用法及代码示例
- Python pandas.DataFrame.to_excel用法及代码示例
- Python pandas.DataFrame.to_records用法及代码示例
- Python pandas.DataFrame.take用法及代码示例
- Python pandas.DataFrame.to_stata用法及代码示例
注:本文由纯净天空筛选整理自pandas.pydata.org大神的英文原创作品 pandas.DataFrame.truncate。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。