如何将逗号分隔的字典字符串拆分为Pandas datafram

2024-10-02 00:20:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个以下格式的字符串:

{apple:"34253453",oranges:"Sweet",x:"COOL"},{apple:"34222453",oranges:"Dry",x:"WARM"},{apple:"31113453",oranges:"Bitter",x:"HOT"},{apple:"38883453",oranges:"Sweet",x:"COOL"}

在“苹果”和“苹果”框中分别放置一个“行”和“x”标签,以创建它们各自的数据和值。在

我尝试过使用这个解决方案:Python convert comma separated list to pandas dataframe以及ast.literal_评估在将其转换为数据帧之前先将其转换为列表,但运气不佳。在


Tags: 数据字符串苹果appleconvert格式标签解决方案
1条回答
网友
1楼 · 发布于 2024-10-02 00:20:44

您的字符串json无效,因此需要先进行一些替换:

import ast

s = '{apple:"34253453",oranges:"Sweet",x:"COOL"},{apple:"34222453",oranges:"Dry",x:"WARM"},{apple:"31113453",oranges:"Bitter",x:"HOT"},{apple:"38883453",oranges:"Sweet",x:"COOL"}'

ss = '[' + s.replace('{', '{"').replace(':"','":"').replace('",', '","') + ']'
print (ss)

[{"apple":"34253453","oranges":"Sweet","x":"COOL"},
 {"apple":"34222453","oranges":"Dry","x":"WARM"},
 {"apple":"31113453","oranges":"Bitter","x":"HOT"},
 {"apple":"38883453","oranges":"Sweet","x":"COOL"}]

^{pr2}$
df = pd.DataFrame(pd.io.json.loads(ss))
print (df)
      apple oranges     x
0  34253453   Sweet  COOL
1  34222453     Dry  WARM
2  31113453  Bitter   HOT
3  38883453   Sweet  COOL

相关问题 更多 >

    热门问题