gpt4 book ai didi

python - 从第一个数据帧的两列中查找到第二个数据帧中的一列

转载 作者:行者123 更新时间:2023-12-01 09:30:58 24 4
gpt4 key购买 nike

我有两个数据框。

其中之一是:

col1 col2 col3
43 21 2
32 31 4

第二个

cl4 cl5 cl6
43 1 "text"
21 0 "text2"
32 1 "text3"

从数据帧 1 中,col1 和 col2 的值存在于第二个数据帧的 cl4 中。

如何创建一个条件,从数据帧 1 中获取 col1 和 col2 的值,并在数据帧 2 的 cl4 中查找,并根据此条件获取 cl6 的值

示例

df1.col1 == df2.cl4 && df1.col2 == df2.cl4

最佳答案

编辑:

print (df2)
cl4 cl5 cl6
0 43 1 text
1 21 0 text2
2 31 1 text3
3 32 4 text4

#shift column for test next row
df2['a'] = df2['cl4'].shift(-1)
#join together next cl6 value
df2['new'] = df2['cl6'] + ', ' + df2['cl6'].shift(-1)
#remove last row of Dataframe because NaN
df2 = df2.iloc[:-1]

#create list of sets by actual and nex values
df2_sets = [set(x) for x in zip(df2['cl4'], df2['a'].astype(int))]
df1_sets = [set(x) for x in zip(df1['col1'], df1['col2'])]
#compare values and at least one True return True
#filter by boolena indexing
s = df2.loc[[any(x == y for y in df1_sets) for x in df2_sets], 'new']
print (s)
0 text, text2
2 text3, text4
Name: new, dtype: object

关于python - 从第一个数据帧的两列中查找到第二个数据帧中的一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49964558/

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