我正在处理VCF文件格式,在以pandas数据帧获取数据之后,我的输出低于输出。
代码
df1=df['info_dict']
print df1
输出-
chr1 2337185 {u'END': 2337193}
2337194 {u'IDS': u'1026660,1026661', u'CUR': u'UNKNOWN'}
2337195 {u'END': 2337293}
2337903 {u'END': 2338125}
2338126{u'IDS': u'652130,652129', u'CUR': u'KNOWN_BEN...
2338127 {u'END': 2338414}
2339871 {u'END': 2340199}
我只想获取第三列中IDS的值。
预期输出:
chr1 2337194 '1026660,1026661'
2338126 '652130,652129'
答案 0 :(得分:0)
使用.get
从默认值为None
的字典中获取值,如果不匹配,最后用Series.dropna
删除None
:
s = df['info_dict'].apply(lambda x: x.get('IDS')).dropna()
print (s)
chr1 2337194 1026660,1026661
2338126 652130,652129
Name: col, dtype: object