字符串操作 pandas

String manipulation pandas

我有一个名为 Timestamp 的列,类型为 str,我想将该列的值更改为更合适的格式,即 3533:53 pm.

如何使用 pandas 或适当的字符串操作来做到这一点?

c = pd.DataFrame({"Timestamp":x,"Latitude":y,"Longitude":z})
c.head()

您可以在该列上调用 apply 并传递一个函数,该函数将拆分每个字符串并插入一个冒号:

c['Timestamp'].apply(lambda x: x[0:-2] + ':' + x[-2:])

这也有效:

from datetime import datetime

c['Timestamp'].apply(lambda x: datetime.strptime(x.rjust(4, '0'), '%H%M').strftime('%H:%M'))

(只是想把这个放在这里)

正如@ChrisA 在评论中提到的,你也可以这样做:

c['Timestamp'] = pd.to_datetime(c['Timestamp'], format='%H%M').dt.time