使用Numpy过滤两个数据帧



我有两个数据帧。它们的结构是这样的:

df

<表类> 信 ID tbody><<tr>3B4

我首先将df_b[Letter, ID]的每个组合聚合为使用.groupby的列表,然后与df_a合并并随后应用outliers函数。应该更快:

df_a["results"] = df_a.merge(
df_b.groupby(["Letter", "ID"])["Value"].agg(list),
left_on=["Letter", "ID"],
right_index=True,
how="left",
)["Value"].apply(outliers)
print(df_a)

您可以先尝试合并数据集a和b,然后通过字母和ID运行组,聚合Value by Outlier函数。

pd.merge(a,b,how="inner",on = ['letter','ID']).groupby(['letter','ID']).agg(outlier).reset_index()

最新更新