Python合并长短CSV文件:保留长文件全部数据的问题求助
解决CSV合并保留长文件数据的问题
默认情况下,pd.merge() 使用的是内连接(inner join),只会保留两个表中Time列值完全匹配的行,这就是短文件无匹配时长文件数据丢失的原因。
要保留长文件(First_Half.csv)的所有数据,只需要给merge()方法添加how='left'参数,指定使用左连接:
import pandas as pd a = pd.read_csv("First_Half.csv") b = pd.read_csv("Second_Half.csv") merged = a.merge(b, on='Time', how='left') # 新增how='left'参数实现左连接 merged.to_csv("Data.csv", index=False)
左连接会保留左表(这里是a,即长文件)的所有行,当右表(b,短文件)没有对应Time值的匹配行时,右表的列会用NaN填充,这样就不会丢失长文件里的剩余数据了。
内容的提问来源于stack exchange,提问作者RPa
相关产品推荐
相关产品推荐

