pandas.DataFrame.to_timestamp#
- DataFrame.to_timestamp(freq=None, how='start', axis=0, copy=<no_default>)[源代码][源代码]#
将 PeriodIndex 转换为时间戳的 DatetimeIndex,在周期的 开始。
这可以通过指定 how=”e” 改为周期的 结束。
- 参数:
- freqstr, PeriodIndex 的默认频率
期望的频率。
- 如何{‘s’, ‘e’, ‘start’, ‘end’}
转换周期为时间戳的约定;周期的开始与结束。
- 轴{0 或 ‘index’, 1 或 ‘columns’},默认 0
要转换的轴(默认是索引)。
- 复制布尔值, 默认为 False
如果为 False,则不会复制底层输入数据。
备注
copy 关键字将在 pandas 3.0 中改变行为。写时复制 将被默认启用,这意味着所有带有 copy 关键字的方法将使用一种延迟复制机制来推迟复制并忽略 copy 关键字。copy 关键字将在 pandas 的未来版本中被移除。
通过启用写时复制
pd.options.mode.copy_on_write = True
,您已经可以获得未来的行为和改进。自 3.0.0 版本弃用.
- 返回:
- 带有 DatetimeIndex 的 DataFrame
带有转换为 DatetimeIndex 的 PeriodIndex 的 DataFrame。
参见
DataFrame.to_period
将 DatetimeIndex 转换为 PeriodIndex 的逆方法。
Series.to_timestamp
Series 的等效方法
例子
>>> idx = pd.PeriodIndex(["2023", "2024"], freq="Y") >>> d = {"col1": [1, 2], "col2": [3, 4]} >>> df1 = pd.DataFrame(data=d, index=idx) >>> df1 col1 col2 2023 1 3 2024 2 4
在这种情况下,生成的时间戳将是一年的开始。
>>> df1 = df1.to_timestamp() >>> df1 col1 col2 2023-01-01 1 3 2024-01-01 2 4 >>> df1.index DatetimeIndex(['2023-01-01', '2024-01-01'], dtype='datetime64[ns]', freq=None)
使用 freq,这是时间戳将具有的偏移量
>>> df2 = pd.DataFrame(data=d, index=idx) >>> df2 = df2.to_timestamp(freq="M") >>> df2 col1 col2 2023-01-31 1 3 2024-01-31 2 4 >>> df2.index DatetimeIndex(['2023-01-31', '2024-01-31'], dtype='datetime64[ns]', freq=None)