为了账号安全,请及时绑定邮箱和手机立即绑定

Pandas 'values' 将 pd.Timestamp 转换为 datetime64

Pandas 'values' 将 pd.Timestamp 转换为 datetime64

鸿蒙传说 2022-11-09 14:48:26
df我有一个带有 type 列的pandas 数据框pandas.Timestamp,我需要将其转换为列表列表(每行的列表)。当我使用时,df.values我确实得到了一个列表列表,但是类型被转换为datetime64稍后在我的代码中导致问题的类型。例子:import pandas as pdpd.DataFrame([pd.Timestamp('2020-01-01')]).valuesOut[259]: array([['2020-01-01T00:00:00.000000000']], dtype='datetime64[ns]')如果我pandas.Series.to_list分别在每一列上使用,则保留类型:pd.DataFrame([pd.Timestamp('2020-01-01')])[0].to_list()Out[261]: [Timestamp('2020-01-01 00:00:00')]但是,如果我有多个列,它会变得不方便,因为我需要将它应用于每一列并使用它zip来获取时间戳列表的列表。没有这种类型转换,有没有更直接的方法来获取值?
查看完整描述

1 回答

?
偶然的你

TA贡献1841条经验 获得超3个赞

您可以使用 to_dict 方法将方向指定为列表


df = pd.DataFrame([ { 'a' : pd.Timestamp('2020-01-01') , 'b' : pd.Timestamp('2020-01-01')}]  )


In [55]: df

Out[55]:

           a          b

0 2020-01-01 2020-01-01


In [56]: list(df.to_dict('list').values())

Out[56]: [[Timestamp('2020-01-01 00:00:00')], [Timestamp('2020-01-01 00:00:00')]]


查看完整回答
反对 回复 2022-11-09
  • 1 回答
  • 0 关注
  • 102 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信