我想从数据框中拆分数据为两列,并使用这些数据构建新的列。
我的数据框是,
我的数据框是,
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)
合并,得到所有需要的数据。但是,格式不符合预期。
有什么建议吗?我认为更好的方法是在列A
和B
上使用split
,然后创建一个以A
中的值为键,B
中的值为值的dict
列。然后可以将此列转换为数据框。
谢谢