使用 NaN 将 Json 读入 Python 和 Pandas
Read Json with NaN into Python and Pandas
我知道 JSON 文件中不允许使用 NaN。我通常使用
import pandas as pd
pd.read_json('file.json')
将 JSON 读入 python。查看文档,我没有看到处理该值的选项。
我有一个 JSON 文件,data.json,看起来像
[{"city": "Los Angeles","job":"chef","age":30},
{"city": "New York","job":"driver","age":35},
{"city": "San Jose","job":"pilot","age":NaN}]
如何将其读入 python/pandas 并处理 NaN 值?
编辑:
下面的答案很棒!!谢谢修复师!!就这样记录下来,从一个单独的文件中读取它
import pandas as pd
import json
text=open('data.json','r')
x=text.read()
y=json.loads(x)
data=pd.DataFrame(y)
data.head()
将json文件读入变量:
x = '''[{"city": "Los Angeles","job":"chef","age":30}, {"city": "New York","job":"driver","age":35}, {"city": "San Jose","job":"pilot","age":NaN}]'''
现在,用 json.loads
加载它
In [41]: import json
In [42]: y = json.loads(x)
In [43]: y
Out[43]:
[{u'age': 30, u'city': u'Los Angeles', u'job': u'chef'},
{u'age': 35, u'city': u'New York', u'job': u'driver'},
{u'age': nan, u'city': u'San Jose', u'job': u'pilot'}]
而且,
In [44]: pd.DataFrame(y)
Out[44]:
age city job
0 30 Los Angeles chef
1 35 New York driver
2 NaN San Jose pilot
我知道 JSON 文件中不允许使用 NaN。我通常使用
import pandas as pd
pd.read_json('file.json')
将 JSON 读入 python。查看文档,我没有看到处理该值的选项。
我有一个 JSON 文件,data.json,看起来像
[{"city": "Los Angeles","job":"chef","age":30},
{"city": "New York","job":"driver","age":35},
{"city": "San Jose","job":"pilot","age":NaN}]
如何将其读入 python/pandas 并处理 NaN 值?
编辑:
下面的答案很棒!!谢谢修复师!!就这样记录下来,从一个单独的文件中读取它
import pandas as pd
import json
text=open('data.json','r')
x=text.read()
y=json.loads(x)
data=pd.DataFrame(y)
data.head()
将json文件读入变量:
x = '''[{"city": "Los Angeles","job":"chef","age":30}, {"city": "New York","job":"driver","age":35}, {"city": "San Jose","job":"pilot","age":NaN}]'''
现在,用 json.loads
加载它In [41]: import json
In [42]: y = json.loads(x)
In [43]: y
Out[43]:
[{u'age': 30, u'city': u'Los Angeles', u'job': u'chef'},
{u'age': 35, u'city': u'New York', u'job': u'driver'},
{u'age': nan, u'city': u'San Jose', u'job': u'pilot'}]
而且,
In [44]: pd.DataFrame(y)
Out[44]:
age city job
0 30 Los Angeles chef
1 35 New York driver
2 NaN San Jose pilot