gpt4 book ai didi

python - Pandas - 仅查看某些列时查找两个数据框之间的离群行

转载 作者:太空宇宙 更新时间:2023-11-03 11:59:56 26 4
gpt4 key购买 nike

我有两个数据框 - 一个由 powerapp 的用户编辑。另一个直接来自 onedrive。

列标题几乎相同,我需要比较两个数据帧并将任何新行添加到来自 powerapps 的数据帧中。以下是两个示例数据框:

Powerapps 数据框:

          Send/Collect            Hospital   Courier                      Kit                      Manufacturer  Status
0 Send Nuffield Ipswich Courier ActivMotion (HTO - DFO) NewClip Hire Log 2018.xlsx Not Started
1 Send BMI Rosshal Courier ActivMotion (HTO - DFO) NewClip Hire Log 2018.xlsx In Progress
2 Collect Stepping Hill Courier ActivMotion (HTO - DFO) NewClip Hire Log 2018.xlsx Not Started
3 Collect York District Courier ActivMotion (HTO - DFO) NewClip Hire Log 2018.xlsx Not Started
4 Royal Devon Exeter NaN NaN ActivMotion (HTO - DFO) NewClip Hire Log 2018.xlsx Not Started
5 collect Spire Bristol Courier ActivMotion (HTO - DFO) NewClip Hire Log 2018.xlsx Complete
6 Send Bridlington Courier ToeMotion - MTP DF Arthrosurface Hire Log 2018.xlsx Not Started
7 Send Femoral Head Hampshire Clinic DHL Human Tissue Human Tissue Log.xlsx Not Started

Onedrive 数据框:

          Send/Collect            Hospital   Courier                      Kit                      Manufacturer
0 Send Nuffield Ipswich Courier ActivMotion (HTO - DFO) NewClip Hire Log 2018.xlsx
1 Send BMI Rosshal Courier ActivMotion (HTO - DFO) NewClip Hire Log 2018.xlsx
2 Collect Stepping Hill Courier ActivMotion (HTO - DFO) NewClip Hire Log 2018.xlsx
3 Collect York District Courier ActivMotion (HTO - DFO) NewClip Hire Log 2018.xlsx
4 Royal Devon Exeter ActivMotion (HTO - DFO) NewClip Hire Log 2018.xlsx
5 collect Spire Bristol Courier ActivMotion (HTO - DFO) NewClip Hire Log 2018.xlsx
6 Royal Devon Exeter ActivMotion (HTO - DFO) NewClip Hire Log 2018.xlsx
7 Send Bridlington Courier ToeMotion - MTP DF Arthrosurface Hire Log 2018.xlsx
8 Send Femoral Head Hampshire Clinic DHL Human Tissue Human Tissue Log.xlsx

如您所见,powerapps 数据框有一个不同的列(可以包含不同的值,而不仅仅是“未启动”),而 onedrive 数据框有一个额外的行(需要进入 powerapps df)。

另请注意,虽然来自 onedrive 数据框的空单元格是一个字符串“”,但来自 powerapps 的是 nan。

我需要将额外的行从 onedrive 合并到 powerapps(向该行添加“未启动”状态)。我想我需要一种方法,该方法将根据第 0、3 和 4 列中发现的相似性进行合并,同时忽略第 1、2 和 5 列。我该怎么做?

最佳答案

我认为 concat 适合这里

#replacing all the spaces with nan in the onedrive dataframe
onedrive.replace('""', 'nan') #use np.nan accordingly
powerapp = pd.concat([onedrive, powerapp])

powerapp.Status.fillna('Not Started', inplace=True)

根据列的子集删除冗余数据。
注意:合并后重新设置索引

关于python - Pandas - 仅查看某些列时查找两个数据框之间的离群行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52117704/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com