[英]How can I join two dataframes based on matching values in one column?
I start with two dataframes:我从两个数据框开始:
Breakfast Lunch
1 Monday Cereal Sandwich
2 Wednesday Eggs Salad
Dinner Snack
1 Monday Ham Chips
2 Tuesday Pasta Nuts
3 Wednesday Chicken Apple
How can I join these two dataframes comparing weekdays in to something like:如何加入这两个数据框,将工作日与以下内容进行比较:
Breakfast Lunch Dinner Snack
1 Monday Cereal Sandwich Ham Chips
2 Tuesday Pasta Nuts
3 Wednesday Eggs Salad Chicken Apple
You can join
(to take advantage of the fact that you're merging on index);您可以
join
(利用您正在合并索引的事实); then groupby
index level 1 (which are days of the week) and use first
(which by default drops NaN values)然后
groupby
索引级别 1(这是一周中的几天)并first
使用(默认情况下会丢弃 NaN 值)
out = df1.join(df2, how='outer').groupby(level=1).first().replace({None:''})
Output: Output:
Breakfast Lunch Dinner Snack
Monday Cereal Sandwich Ham Chips
Tuesday Pasta Nuts
Wednesday Eggs Salad Chicken Apple
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.