我想从数据框中分割两列数据,并使用此数据构建新列。
我的数据框是,
dfc = pd.DataFrame( {"A": ["GT:DP:RO:QR:AO:QA:GL", "GT:DP:RO:QR:AO:QA:GL", "GT:DP:RO:QR:AO:QA:GL", "GT:DP:GL", "GT:DP:GL"], "B": ["0/1:71:43:1363:28:806:-71.1191,0,-121.278", "0/1:71:43:1363:28:806:-71.1191,0,-121.278", "0/1:71:43:1363:28:806:-71.1191,0,-121.278", "1/1:49:-103.754,0,-3.51307", "1/1:49:-103.754,0,-3.51307"]} )
我希望名为GT, DP, RO, QR, AO, QA, GL
的各列具有列B
我们可以使用a = df.A.str.split(":", expand = True)
和b = df.B.str.split(":", expand = True)
拆分两列,以获得两个单独的数据框。这些可以与c = pd.merge(a, b, left_index = True, right_index = True)
合并以获取所有需要的数据。但是,不是按照预期的格式。
有什么建议吗?我认为更好的方法是在split
和A
列上使用B
,然后创建一个dict
列,其中A
的值为关键字{{1}作为价值观。然后,此列可以转换为数据框。
感谢
答案 0 :(得分:3)
答案 1 :(得分:2)