我有一个数据框,我想拆分CO2 rowise:
Co1 Co2
1 [{'link':'http:abc.com'},{'link':'http:def.com'}]
2 [{'link':'http:ghi.com'},{'link':'http:lmn.com'}]
预期产量
Co1 Co2
1 http:abc.com
1 http:def.com
2 http:ghi.com
2 http:lmn.com
concat
与DataFrame
列表理解中创建的词典一起使用并按原样连接DataFrame.join
,DataFrame.pop
用于提取列:
import ast
#if values are string repr of lists
dfs = {k:pd.DataFrame(ast.literal_eval(x)) for k, x in df.pop('Co2').items()}
#if values are lists of dicts
#dfs = {k:pd.DataFrame(x) for k, x in df.pop('Co2').items()}
df = df.join(pd.concat(dfs).reset_index(level=1, drop=True)).reset_index(drop=True)
print (df)
Co1 link
0 1 http:abc.com
1 1 http:def.com
2 2 http:ghi.com
3 2 http:lmn.com
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句