使用Pandas / Python将两个数据框使用列表合并到单值映射

卡洛尔

我有一个这样的数据框,

df
col1    col2
 A      [1,2]
 B      [3,4]
 C      [1,4,5]

another dataframe,
df1
col3    col4
 1       X
 2       Y
 3       Z
 4       W

现在,我想使用df的col2和df1的col3合并/合并这两个数据帧,因此数据帧应如下所示:

col1   col2      col4
 A     [1,2]     [X,Y]
 B     [3,4]     [Z,W]
 C     [1,4,5]   [X,W]

寻找一些熊猫捷径。

耶斯雷尔

仅当匹配值时,才将列表推导与按字典映射一起使用:

d = df1.set_index('col3')['col4'].to_dict()
df['col4'] = df['col2'].map(lambda x: [d[y] for y in x if y in d])
print (df)
  col1       col2    col4
0    A     [1, 2]  [X, Y]
1    B     [3, 4]  [Z, W]
2    C  [1, 4, 5]  [X, W]

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用Java流,将具有相同键但值不同的两个映射合并到元组?

Pandas / Python将两个数据框与重复的行合并

如何使用.add()函数在python中合并两个数据框

如何使用dplyr合并两个数据框以汇总同一列的值?

Python Pandas-如何将具有两个不同列的两个数据框合并到两个列表列

使用pd.merge映射两个数据框

如何使用Python / Pandas将数据框的其他行合并到当前行

如何将列表的两个列表合并到python中的pandas DataFrame中?

使用groupby和名称列表合并两个数据框

c#如何通过使用ItemArray将两个数据行和列合并到一个数据表中?

使用Pandas比较两个数据框的列值

使用python中的pandas将列表中的数据框合并为单个数据框

合并两个数据框而不使用for循环

比较两个数据框的列,并使用Pandas返回不同列的值

在python熊猫中,如何合并两个数据帧,同时使用另一个的权重将值散布在一个数据中?

使用Pandas Python根据通用值合并两个数据框?

Python Pandas基于多个值字段合并两个数据框

使用R合并两个数据帧列表

如何使用python-pandas合并基于互信息的两个数据框?

我们如何使用php将两个数据库合并到新数据库中

将两个 Pandas 数据框与列值合并

使用pandas concat合并两个数据框时如何删除重复项

使用 Pandas 合并两个数据帧 - python

Pandas/python 加入/合并列表列上的两个数据框

Python Pandas 合并两个键上的两个数据框并获得总数

使用 dplyr left join 合并两个数据框?

如何使用 Pandas Python 合并两个数据帧

Pandas 将两个系列合并到一个数据帧中

使用两个数据框列作为参考映射值