Python - JSON 数组到 DataFrame
Posted
技术标签:
【中文标题】Python - JSON 数组到 DataFrame【英文标题】:Python - JSON array to DataFrame 【发布时间】:2018-10-16 09:59:45 【问题描述】:我有以下JSON
数组。
[
"foo"=1
,
"foo"=2
,
...
]
我想使用pd.read_json()
命令将其转换为DataFrame
对象,如下所示。
df = pd.read_json(my_json) #my_json is JSON array above
但是,我得到了错误,因为 my_json
是 list
/array
的 json
。错误是ValueError: Invalid file path or buffer object type: <class 'list'>
。
除了遍历list
,还有什么有效的方法可以将JSON
提取/转换为DataFrame
对象吗?
【问题讨论】:
在您的示例中,您在列表中调用read_csv
。
@AmiTavory @thebjorn 错字的家伙。编辑为正确的,即read_json()
【参考方案1】:
使用df = pd.DataFrame(YourList)
例如:
import pandas as pd
d = [
"foo":1
,
"foo":2
]
df = pd.DataFrame(d)
print(df)
输出:
foo
0 1
1 2
【讨论】:
【参考方案2】:你的问题有两个问题:
-
它在列表中调用
to_csv
。
JSON 是非法的,因为它包含 =
符号而不是 :
这是我的作品:
import json
import pandas as pd
>>> pd.DataFrame(json.loads("""[
"foo": 1
,
"foo": 2
]"""))
foo
0 1
1 2
您也可以直接拨打read_json
。
【讨论】:
以上是关于Python - JSON 数组到 DataFrame的主要内容,如果未能解决你的问题,请参考以下文章
将 JSON 数组嵌套到 Python Pandas DataFrame