我从网站上抓取了这个列表,我想将其转换为带有列的pandas数据框:
每行中的ID,名称,PMID,来源,家庭,值,重量和适当的值及其关联的ID
[['ID'],
['243'],
['Name'],
['ABC'],
['PMID'],
['--NA--'],
['Source'],
['ABC'],
['Family'],
['XYZ'],
['Value'],
['45'],
['Weight'],
['200'],
['ID'],
['246'],
['Name'],
['PaS'],
['PMID'],
['--NA--'],
['Source'],
['APM'],
['Family'],
['Lau'],
['Value'],
['120'],
['Weight'],
['856'],
...]
请帮助我。谢谢。
您可以尝试以下方法:
import pandas as pd
res = [['ID'],
['243'],
['Name'],
['ABC'],
['PMID'],
['--NA--'],
['Source'],
['ABC'],
['Family'],
['XYZ'],
['Value'],
['45'],
['Weight'],
['200'],
['ID'],
['246'],
['Name'],
['PaS'],
['PMID'],
['--NA--'],
['Source'],
['APM'],
['Family'],
['Lau'],
['Value'],
['120'],
['Weight'],
['856']]
dfi = pd.DataFrame(np.array(res).reshape(-1,2))
grp = (dfi[0] == 'ID').cumsum()
dfi.set_index([grp, 0])[1].unstack()
输出:
0 Family ID Name PMID Source Value Weight
0
1 XYZ 243 ABC --NA-- ABC 45 200
2 Lau 246 PaS --NA-- APM 120 856
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句