熊猫时间戳系列字符串?

Sta*_*ent 10 python arrays vector pandas

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

我尝试过df['timestamp'].apply('str'),但这似乎只是将整个列df['timestamp']放入一个长字符串中。我想将每个元素转换为字符串并保留结构,以使其仍然是向量(或者也许称为数组?)

piR*_*red 15

考虑数据框 df

df = pd.DataFrame(dict(timestamp=pd.to_datetime(['2000-01-01'])))

df

   timestamp
0 2000-01-01
Run Code Online (Sandbox Code Playgroud)

使用datetime dt访问器访问该strftime方法。您可以将格式字符串传递给strftime,它将返回格式化的字符串。与dt访问器一起使用时,您将获得一系列字符串。

df.timestamp.dt.strftime('%Y-%m-%d')

0    2000-01-01
Name: timestamp, dtype: object
Run Code Online (Sandbox Code Playgroud)

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


Vin*_*ceP 9

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
Run Code Online (Sandbox Code Playgroud)

返回一个字符串数组


Mar*_*ews 6

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

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