我已经使用以下命令读取了一个csv文件:
df=df.read_csv("path",parse_dates=[['Local Date', 'Local Time']])
我有以下输出:
created_at Close Open Volume Day
0 01-Mar-2019 00:47 25916.00 25916.00 141383 STABLE
1 01-Mar-2019 00:21 25916.00 25916.00 1 STABLE
2 01-Mar-2019 00:20 25916.00 25916.00 74 STABLE
3 01-Mar-2019 00:19 25916.00 25916.00 222 STABLE
4 01-Mar-2019 00:18 25916.00 25916.00 108257 STABLE
... ... ... ... ... ...
我想通过以下方式转换“ created_at”列:
created_at Close Open Volume Day
0 01-03-2019 00:47 25916.00 25916.00 141383 STABLE
1 01-03-2019 00:21 25916.00 25916.00 1 STABLE
2 01-03-2019 00:20 25916.00 25916.00 74 STABLE
3 01-03-2019 00:19 25916.00 25916.00 222 STABLE
4 01-03-2019 00:18 25916.00 25916.00 108257 STABLE
... ... ... ... ... ...
我想将以“字母”形式书写的月份“转换”为“数字”形式。
答案 0 :(得分:0)
尝试一下
df ['dt2'] = pd.to_datetime(df.created_at).dt.strftime('%d-%m-%Y%H:%M')
首先它将字符串转换为日期,然后将其转换为具有所需格式的字符串。
答案 1 :(得分:0)
仅测试一下将列created_at
转换为pd.to_datetime
>>> df
created_at
0 01-Mar-2019 00:47
1 01-Mar-2019 00:21
2 01-Mar-2019 00:20
>>> pd.to_datetime(df['created_at'])
0 2019-03-01 00:47:00
1 2019-03-01 00:21:00
2 2019-03-01 00:20:00
Name: created_at, dtype: datetime64[ns]
出于好奇的缘故,如注释中所述,可以将其直接更改为数据框,如下所示:
df['created_at'] = pd.to_datetime(df['created_at'])