pandas时间戳系列到字符串?

时间:2017-06-24 22:39:33

标签: python arrays pandas vector

我是python的新手(来自R),我试图理解如何将pandas数据帧(在我的情况下称为df['timestamp'])中的时间戳系列转换为我称之为的R中的字符串向量是否可能?怎么会这样做?

我尝试了df['timestamp'].apply('str'),但这似乎只是将整个列df['timestamp']放入一个长字符串中。我希望将每个元素转换为字符串并保留结构,以便它仍然是一个向量(或者这可能是一个数组?)

3 个答案:

答案 0 :(得分:9)

考虑数据框df = pd.DataFrame(dict(timestamp=pd.to_datetime(['2000-01-01']))) df timestamp 0 2000-01-01

dt

使用日期时间访问者strftime访问strftime方法。您可以将格式字符串传递给dt,它将返回格式化的字符串。与df.timestamp.dt.strftime('%Y-%m-%d') 0 2000-01-01 Name: timestamp, dtype: object 访问者一起使用时,您将获得一系列字符串。

gcloud components install app-engine-go

访问strftime.org以获取一组便捷的格式字符串。

答案 1 :(得分:2)

使用astype

>>> import pandas as pd
>>> df = pd.to_datetime(pd.Series(['Jul 31, 2009', '2010-01-10', None])) 
>>> df.astype(str)
0    2009-07-31
1    2010-01-10
2           NaT
dtype: object

返回一个字符串数组

答案 2 :(得分:1)

根据VinceP的答案,要就地转换日期时间系列,请执行以下操作:

df['Column_name']=df['Column_name'].astype(str)