我正在尝试将一列时间转换为星期几。 我有一个名为df的数据框,我的代码是:
import pandas as pd
import time
df = pd.read_csv('df.csv')
df['epoch'] = (df['epoch']).to_string()
df['day'] = time.ctime(df['epoch'])
我尝试了astype(),但无法正常工作。
因此,假设我有一列(根据大量数据)的纪元时间包含:
1536444331894
1536444363932
1536444386908
1540436500055
1536444443458
以此类推...
我需要此列中的日期而不是秒:
Saturday
Saturday
Saturday
Thursday
Saturday
...
答案 0 :(得分:3)
Pandas提供了用于日期时间转换的向量化方法to_datetime
。您的纪元以毫秒为单位,因此您需要相应地传递unit='ms'
参数。从那里,您可以使用strftime
提取日期。
pd.to_datetime(df['epoch'], unit='ms').dt.strftime('%A')
0 Saturday
1 Saturday
2 Saturday
3 Thursday
4 Saturday
Name: epoch, dtype: object
答案 1 :(得分:1)