[英]Match and Store Python Dataframe
我试图找出一种方法将 dataframe 列中的给定值与另一个 dataframe 列相匹配,然后将来自 df1 的 AGE 存储在 df2 中。
例如,将 df1 中的 VAL 与 df2 中的 VAL 匹配。 如果两者相等,则将来自 df1 的 AGE 存储在 AGE df2 中。
| df1 | VAL | AGE |
|:--- |:---:|----:|
| 0 | 20 | 25 |
| 1 | 10 | 29 |
| 2 | 50 | 21 |
| 4 | 20 | 32 |
| 5 | 00 | 19 |
| df2 | VAL | AGE |
|:--- |:---:|----:|
| 0 | 00 | [] |
| 1 | 10 | [] |
| 2 | 20 | [] |
| 4 | 30 | [] |
| 5 | 40 | [] |
| 6 | 50 | [] |
编辑: df2 中的 AGE 存储值数组而不是单个值
尝试:
x = df1.groupby("VAL").agg(list)
df2["AGE"] = df2["VAL"].map(x["AGE"]).fillna({i: [] for i in df2.index})
print(df2)
印刷:
VAL AGE
0 0 [19]
1 10 [29]
2 20 [25, 32]
4 30 []
5 40 []
6 50 [21]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.