我有多个csv文件,这些文件的名称显示日期,如
"cd191108.csv", "cd191120.csv"
而csv文件包含这样的数据。
GMT + TZ;Value
10:43:00;10
10:45:00;20
我想做的是将所有的csv文件合并到pandas中的一个数据框架中,但其中的 "时间 "列表示来自文件名的日期和来自文件内容的小时,例如
Time;value
2019-11-08 10:43:00;10
我通过像下面这样的方式。
import os
import pandas as pd
path = os.getcwd()
files = os.listdir(path)
files_csvf = [f for f in files if f[-3:] == 'csv']
files_csv
dfs=[]
for f in files_csv:
data = pd.read_csv(f,sep=";",index_col=False)
data['datetime']=pd.to_datetime(f[2:8])+pd.to_timedelta(data['GMT + TZ'])
data=data.drop('GMT + TZ',axis=1)
dfs.append(data)
df=pd.concat(dfs,ignore_index=True)
(refered to 如何将文件名中的日期添加到时间列中,使之成为日期时间列?Python Pandas)
However, the result of 'Time' columns is following:
2008-11-19 10:43:00
而不是我期望的那样
2019-11-08 10:43:00
我试着用 "to_datetime "来纠正,但它不起作用。
df['Time'] = pd.to_datetime(df['Time']