2016-04-19 13 views
2

からパンダにデータをネストされた:インポートは、次のように私は、生成されたファイルを持っているJSONファイル

[{"intervals": [{"overwrites": 35588.4, "latency": 479.52}, {"overwrites": 150375.0, "latency": 441.1485001192274}], "uid": "23"}] 

私は、ファイルにスペース上の理由から、ビットを簡素化(複数の列は、「上書き」と「レイテンシーのため以外にもあります")。私はデータフレームにデータをインポートしたいので、後でレイテンシを描くことができます。 、150375.0:

0 {u'overwrites:戻さ

with open(os.path.join(path, "my_file.json")) as json_file: 
    curr_list=json.load(json_file) 
    df=pd.Series(curr_list[0]['intervals']) 

print df 

: ':35588.4をu'latency ...

1 {u'overwrites' Iは、次の試みu'latency ...

しかし、次のようにレイテンシフィールドにアクセスできるデータ構造にdfを格納することができませんでした:

graph = df[['latency']] 
graph.plot(title="latency") 

助けてくれてありがとう!

答えて

1

私はあなたがjson_normalizeを使用することができると思う:

import pandas as pd 
from pandas.io.json import json_normalize 

data = [{"intervals": [{"overwrites": 35588.4, "latency": 479.52}, 
         {"overwrites": 150375.0, "latency": 441.1485001192274}], 
     "uid": "23"}] 


result = json_normalize(data, 'intervals', ['uid']) 
print result 
    latency overwrites uid 
0 479.5200  35588.4 23 
1 441.1485 150375.0 23 
関連する問題