繁体   English   中英

如何按索引组合两个数据帧(熊猫)

[英]How to combine two dataframes by index (pandas)

我有两个数据框,具有相同的date字段,但其他字段不同。 我需要从数据Result_data pneumonia_ARVI Result_data到数据Result_data添加一列pneumonia_ARVI Result_data

它们最初的日期数量不同,在Result_data数据Result_data ,日期明显多于pneumonia_ARVI Result_data

在此处输入图片说明

我需要一个日期匹配的连接,但是如果数据帧pneumonia_ARVI Result_data的记录比数据帧Result_data的记录多,那么首选项将具有数据集Result_data指定的日期。 并将数据集pneumonia_ARVI缺失的数据替换为空值。

我试过做

Result_data = Result_data.set_index('date')
pneumonia_ARVI = pneumonia_ARVI.set_index('date')
End = pd.merge(Result_data, pneumonia_ARVI, left_index=True, right_index=True)

但这导致数据相互调整,并且字段infected_city并没有按日期保留所有原始值。

如何正确组合这些数据,以便减少日期总数没有问题?

使用join

#convert to datetime if needed
Result_data["date"] = pd.to_datetime(Result_data["date"])
pneumonia_ARVI["date"] = pd.to_datetime(pneumonia_ARVI["date"])

#set index as you have done
Result_data = Result_data.set_index('date')
pneumonia_ARVI = pneumonia_ARVI.set_index('date')

#perform a left join
End = Result_data.join(pneumonia_ARVI, how="left")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM