如何根据行值组合两个长度不同的熊猫数据帧

tsk_so

我有以下两个熊猫数据框:

数据帧1:

    user_id       animals    
0         1         'dog'
1         1         'cat'
2         1         'cow'
3         2         'dog'
4         2         'cat'
5         2         'cow'
...

数据帧2:(column_D在此任务中不重要)

    location     column_D
0       'CA'            1
1       'MA'            1
2       'AZ'            1
3       'CT'            1
...

我希望基于#1和#2创建一个新的数据框#3:

数据框#3:

    user_id       animals       location
0         1         'dog'           'MA'
1         1         'cat'           'MA'
2         1         'cow'           'MA'
3         2         'dog'           'AZ'
4         2         'cat'           'AZ'
5         2         'cow'           'AZ'
...

数据帧#3的第一和第二列与数据帧#1相同。对于第三列,我希望根据其user_id和数据帧2中的索引来分配位置。例如,对于数据帧#3中的第0行,由于其user_id = 1,我将检查索引为= 1的数据帧#2中的位置,然后将该位置(在此示例中为“ MA”)分配给用户。

我搜索了使用concat,map,merge等功能的示例,但找不到与此案例相似的示例。有没有办法完成这项任务?

非常感谢!

sammywemmy

试试地图

df["location"] = df1.user_id.map(df2.location)

    user_id animals location
0      1    'dog'   'MA'
1      1    'cat'   'MA'
2      1    'cow'   'MA'
3      2    'dog'   'AZ'
4      2    'cat'   'AZ'
5      2    'cow'   'AZ'

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何组合两个格式相同但长度索引不同的熊猫数据框

如何通过逐列相乘来组合两个不同的多索引熊猫数据帧

如何合并两个不同长度的数据帧?

如何基于一行中的值和不同的列名合并两个熊猫数据帧?

熊猫比较两个不同长度的数据帧并将某些行分成两半

如何从两个不同的熊猫数据帧计算比率

如何串联来自两个不同数据帧的行的组合?

如何连接来自两个不同数据帧的*具有给定条件*的行组合?

如何为matplotlib图组合两个或多个具有不同长度时间序列的pandas数据帧?

如何通过将相同的值写入同一行将两个不同长度的向量写入一个数据帧?

熊猫结合了两个不同长度的时间序列数据帧

如何映射或排序两个不同数据帧的值?

根据通用值组合两个不同长度的向量,并扩展较短的向量

组合来自两个不同数据帧的两列以删除 Pandas 中的缺失值

连接两个不同长度的数据帧

通过线性插值组合两个不同的时间戳数据帧

如何根据日期时间列比较两个长度不等的数据帧

两个如何比较来自两个不同数据框的熊猫的两行

熊猫合并两个不同长度的数据框

比较来自不同数据帧的两个值,并基于熊猫中的添加值

有没有一种方法可以根据匹配的列值来比较两个不同长度的数据帧?

找出熊猫中两个不同数据帧的交集

如何使用具有匹配变量的两个不同长度的不同数据帧减去一个值

仅某些行的两个大小不同的熊猫数据帧的列总和

比较两个熊猫数据帧的内容,即使行的顺序不同

Python:如何组合来自两个不同数据帧的特定列

如何在R中组合来自不同数据帧的两个变量?

根据两个列值是否存在于另一个数据帧中组合两个数据帧

根据多个行条件比较两个不同的数据帧