为了账号安全,请及时绑定邮箱和手机立即绑定

将 python 分隔项列表转换为 pandas 数据框

将 python 分隔项列表转换为 pandas 数据框

HUH函数 2023-07-05 10:31:20
我有一个这样的列表,其中项目由“:”分隔。   x=['john:42:engineer',      'michael:29:doctor']有没有办法通过定义“名称”、“年龄”和“职业”列来将其更改为如下所示的数据框?    Name    Age Occupation0   john    42  engineer1   michael 29  doctor
查看完整描述

3 回答

?
慕容708150

TA贡献1831条经验 获得超4个赞

你可以只使用split:


pd.DataFrame([y.split(':') for y in x], columns = ['Name','Age', 'Occupation'])

输出:


      Name Age Occupation

0     john  42   engineer

1  michael  29     doctor


查看完整回答
反对 回复 2023-07-05
?
守着星空守着你

TA贡献1799条经验 获得超8个赞

我会做


df = pd.Series(x).str.split(':',expand=True)

df.columns = ['Name','Age', 'Occupation']

df

Out[172]: 

      Name Age Occupation

0     john  42   engineer

1  michael  29     doctor


查看完整回答
反对 回复 2023-07-05
?
忽然笑

TA贡献1806条经验 获得超5个赞

不确定这是最好的方法,但是......


x = ['john:42:engineer', 'michael:29:doctor']

x = [i.split(':') for i in x]

pd.DataFrame({'name': [i[0] for i in x], 'age': [i[2] for i in x], 'occupation': [i[1] for i in x]})


Output:


    name    age occupation

0   john    42  engineer

1   michael 29  doctor


查看完整回答
反对 回复 2023-07-05
  • 3 回答
  • 0 关注
  • 123 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信