gpt4 book ai didi

python - 根据比较条件将值插入数据帧

转载 作者:行者123 更新时间:2023-12-03 20:25:27 24 4
gpt4 key购买 nike

我正在尝试根据与另一个数据帧的比较将值插入到数据帧中。
下面是一个例子:

>>> import pandas as pd
>>> import numpy as np
>>> print(df)
>>> df
name
0 richard Finn, Tim Maltby
1 Fernando Lebrija
>>> df2

Fullname id
0 richard Finn 500
1 Tim Maltby 699
2 Fernando Lebrija 300

所需的输出是:
 >>> df
name id
0 richard Finn, Tim Maltby 500,699
1 Fernando Lebrija 300

我尝试使用:
df['id'] = np.where((df['name']==df2['Fullname']), df2['id]', df['id'])

但它给了我以下错误:
`语法错误:语法无效

最佳答案

您可以进行拆分,爆炸,然后映射和分组:

df['id'] = (df['name'].str.split(',\s*')
.explode()
.map(df2.set_index('Fullname')['id'])
.groupby(level=0).agg(list)
)

输出:
                       name          id
0 richard Finn, Tim Maltby [500, 699]
1 Fernando Lebrija [300]

关于python - 根据比较条件将值插入数据帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62305868/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com