我在JSON文件中有一个字典列表,如下所示:
[{"url": "http://www.URL1.com", "date": "2001-01-01"},
{"url": "http://www.URL2.com", "date": "2001-01-02"}, ...]
但是我很难将它导入到熊猫数据框架中 - 这应该很简单,但是我对它进行了消隐。有人能把我直接放在这里吗?
同样,什么是将其简单地读入字典列表以便在python中使用w /的最佳方式?
答案 0 :(得分:2)
您可以使用from_dict
:
import pandas as pd
lis = [{"url": "http://www.URL1.com", "date": "2001-01-01"},
{"url": "http://www.URL2.com", "date": "2001-01-02"}]
print pd.DataFrame.from_dict(lis)
date url
0 2001-01-01 http://www.URL1.com
1 2001-01-02 http://www.URL2.com
或者您可以使用DataFrame
构造函数:
import pandas as pd
lis = [{"url": "http://www.URL1.com", "date": "2001-01-01"}, {"url": "http://www.URL2.com", "date": "2001-01-02"}]
print pd.DataFrame(lis)
date url
0 2001-01-01 http://www.URL1.com
1 2001-01-02 http://www.URL2.com
答案 1 :(得分:0)
虽然from_dict
可以在此处使用,但规定的方式是将pd.read_json
与orient='records'
一起使用。这解析了
类似列表
[{column -> value}, ... , {column -> value}]
示例:说这是lis.json
:
[{"url": "http://www.URL1.com", "date": "2001-01-01"},
{"url": "http://www.URL2.com", "date": "2001-01-02"}]
要将文件路径本身作为输入传递而不是像@ jezrael的回答中那样传递列表:
print(pd.read_json('lis.json', orient='records'))
date url
0 2001-01-01 http://www.URL1.com
1 2001-01-02 http://www.URL2.com