我正在尝试使用如下所示的 Pandas 导入 csv 文件:文件 1:Date;Time;Value2019-03-07;20:43;0.0512019-03-07;20:44;0.048...2019-03-07;22:55;0.0952019-03-07;22:56;0.098 文件2:Date;Time;Value2019-03-07;22:55;0.0952019-03-07;22:56;0.098 ...2019-03-08;09:10;0.0242019-03-08;09:11;0.022目前我正在导入这样的数据:data = pd.concat([pd.read_csv(open(file),sep=';') for file in files])data.index = pd.to_datetime(data['Date'] + ' ' + data['Time']) 显然,现在我在导入的数据框中有两次测量数据的重叠部分,绘制如下:由于我需要评估大量 csv 文件,因此我对处理这种情况的最有效方法很感兴趣。我想到了这两个选项:在循环内导入文件,并且对于每个文件,仅使用file[i] > file[i-1].像我现在一样导入文件并在附加步骤中删除重复项。这些选项中哪个更有效,是否有我现在没有想到的更有效的选择?
1 回答
MMTTMM
TA贡献1869条经验 获得超4个赞
至于删除重复项,pandas 支持:
data = pd.concat([pd.read_csv(open(file),sep=';') for file in files])
data.index = pd.to_datetime(data['Date'] + ' ' + data['Time']
data = data[~data.index.duplicated()]
另见文档:https : //pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Index.duplicated.html
关于做到这一点的“最佳”方法,这取决于数据量、其他限制条件等。如果没有更多上下文就无法回答,无论如何都可能是基于意见的。
添加回答
举报
0/150
提交
取消