一、json 格式转为 dataframe
from pandas.io.json import json_normalize
import pandas as pd
import json
1. 方法一:
data_str = open('').read()
df = pd.read_json(data_str,orient = 'records')
2. 方法二:
data_str = open('').read()
data_list = json.loads(data_str)
df_1 = json_normalize(data_list)
3. 方法三:
data_str = open('').read()
data_list = json.loads(data_str)
# d['title']中的'title'是json格式文件里面的名称
data = [[d['title'],d['score'],d['quote'],d['comment_num']] for d in data_list]
df_2 = pd.DataFrame(data,columns = ['title','score','quote','comment_num'])
二、DataFrame 转 json
import pandas as pd
from pandas import DataFrame as df
data = df([['a', 'b'], ['c', 'd']], index=['row 1', 'row 2'], columns=['col 1', 'col 2'])
1. 方法一:
json_columns = data.to_json(orient = "columns")
返回结果: ‘{“col 1”:{“row 1”:“a”,“row 2”:“c”},“col 2”:{“row 1”:“b”,“row 2”:“d”}}’
json_split = data.to_json(orient = "split")
返回结果: ‘{“columns”:[“col 1”,“col 2”],“index”:[“row 1”,“row 2”],“data”:[[“a”,“b”],[“c”,“d”]]}’
json_records = data.to_json(orient = "records")
返回结果: ‘[{“col 1”:“a”,“col 2”:“b”},{“col 1”:“c”,“col 2”:“d”}]’
json_index = data.to_json(orient = "index")
返回结果:‘{“row 1”:{“col 1”:“a”,“col 2”:“b”},“row 2”:{“col 1”:“c”,“col 2”:“d”}}’
json_values = data.to_json(orient = "values")
返回结果: ‘[[“a”,“b”],[“c”,“d”]]’
2. 方法二:
json_dict = data.to_dict(orient = "dict")
返回结果: {‘col 1’: {‘row 1’: ‘a’, ‘row 2’: ‘c’}, ‘col 2’: {‘row 1’: ‘b’, ‘row 2’: ‘d’}}
json_list = data.to_dict(orient = "list")
返回结果: {‘col 1’: [‘a’, ‘c’], ‘col 2’: [‘b’, ‘d’]}
json_series = data.to_dict(orient = "series")
返回结果: {‘col 1’: row 1 a row 2 c Name: col 1, dtype: object, ‘col 2’: row 1 b row 2 d Name: col 2, dtype: object}
json_split = data.to_dict(orient = "split")
返回结果: {‘index’: [‘row 1’, ‘row 2’], ‘columns’: [‘col 1’, ‘col 2’], ‘data’: [[‘a’, ‘b’], [‘c’, ‘d’]]}
json_records = data.to_dict(orient = "records")
返回结果: [{‘col 1’: ‘a’, ‘col 2’: ‘b’}, {‘col 1’: ‘c’, ‘col 2’: ‘d’}]
json_index = data.to_dict(orient = "index")
返回结果:{‘row 1’: {‘col 1’: ‘a’, ‘col 2’: ‘b’}, ‘row 2’: {‘col 1’: ‘c’, ‘col 2’: ‘d’}}
三、输出Json文件
如果要输出JSON文件
将上述得出的字典进行编码 ()
转化成 json 形式即可:
json.dumps(json_dict)