删除熊猫时间序列中的重复项

时间:2020-06-29 22:06:22

标签: python

我有一个csv文件,其时间序列的结构为:col1: date col2: value。 csv文件的日期是从1月1日到4月30日。然后我有了第二个csv文件,区别是日期是2月1日到5月31日。第二列中从2月1日到4月30日的值是在第一个和第二个文件中相同。第三个csv文件(3月1日至6月30日),第四个等的相同问题:相同的超分配结构。我想读取这些csv文件,但仅保留从1月1日到12月31日的唯一日期,而无需重复输入值。有没有使用Pandas数据框执行此操作的快速方法?

2 个答案:

答案 0 :(得分:1)

一种选择是使用pandas pd.concat()合并文件,然后尝试:

df = pd.concat([file1,file2,file3])
df.drop_duplicates()

答案 1 :(得分:1)

如果没有有关您数据的更多信息,我可能会做这样的事情:

df1, df2, df2 = load_your_data()  # pd.DataFrame objects

import pandas as pd
concat = pd.concat([df1, df2, df2], axis=0)
dedup = concat.drop_duplicates(subset=['col1'])

这假设您重复的日期确实是重复的,并且通过删除这些行不会丢失任何信息。否则,我会考虑将日期转换为DatetimeIndex,并使用适当的汇总方法对数据进行重采样。