我正在从一个文件中读取一个字符串,如下所示:
"[{key1:val1,key2:val2},{key1:val1,key2:val2}.....}]"
如何将此字符串转换为pandas数据帧,并将key1和key2作为两列?
我可以想到字符串操作,比如先删除' ['和']'字符然后拆分'},{' ,追加'}'每个项目都会给我一个"{key1:value1,key2:value2}"
字符串列表,然后对列表中的每个项目执行操作。
但这会有点麻烦。我想知道是否有更清洁的方法来做到这一点。
答案 0 :(得分:1)
试试这个:
In [73]: pd.DataFrame.from_dict([{'key1':'val1','key2':'val2'},{'key1':'val1','key2':'val2'}])
Out[73]:
key1 key2
0 val1 val2
1 val1 val2
或来自JSON字符串:
import json
In [81]: s
Out[81]: '[{"key1":"val1","key2":"val2"},{"key1":"val1","key2":"val2"}]'
In [82]: pd.DataFrame.from_dict(json.loads(s))
Out[82]:
key1 key2
0 val1 val2
1 val1 val2