正如您在下面看到的,我有两个表主表和引用表。在主表中,我有一个列"Subject",它包含由","分隔的"[]"中的tr_id。我使用"tr_id"将它与引用表匹配,以便在主表中将"test_no"作为"Linked_Test_No"获取。
主表:
my_id Name Subject
12 Ash The test [101 , 105]
15 Brock The testing of the subject [101,102]
16 Misty Subject Test [102,106]
18 Tracy Subject Testing [101]
10 Oak Test
19 Paul Testing []
21 Gary Testing : [107]
44 Selena Subject : [104]
参考表:
tr_id latest_em test_no
101 pichu@icloud.com; paul@gmail.com 120
102 ash@yahoo.com 130
103 squirtle@gmail.com 160
104 charmander@gmail.com 180
105 ash@yahoo.com;misty@yahoo.com 100
目前,我正在使用str.extract()
获取tr_id,然后使用pd.merge()
连接两个表,然后将test_no整理到一个列"Linked_Test_no"中,这有很多步骤;我们能用很少的代码行来实现这个吗我的编程技术很基础。
预期输出:
my_id Name Subject Linked_Test_No
12 Ash The test [101 , 105] [120,100]
15 Brock The testing of the subject [101,102] [120,130]
16 Misty Subject Test [102,106] [130]
18 Tracy Subject Testing [101] [120]
10 Oak Test
19 Paul Testing []
21 Gary Testing : [107]
44 Selena Subject : [104] [180]
1条答案
按热度按时间qncylg1j1#
下面的代码为链接分数生成两列。一列忽略引用表(
df_s
)中不存在的tr_id,另一列在缺少tr_id时使用None。请根据您的用例使用其中一列。