Когда я пытаюсь объединить значение фрейма данных и словарь, я сталкиваюсь с ошибкой
Ниже приведен пример json
{
"creation-date": "Fri Mar 23 07:03:31 UTC 2018",
"scan-with-high-privileges": true,
"system-infos": {
"hostname": "vmDiscovery",
"domain": "aw4gb5ukuefulow5njy3bfktkc.rx.internal.cloudapp.net",
"os": "",
"os-details": {
"kernel-version": "Linux vmDiscovery 3.10.0-693.17.1.el7.x86_64 #1 SMP Sun Jan 14 10:36:03 EST 2018 x86_64 x86_64 x86_64 GNU/Linux",
"lsb-id": "",
"lsb-version-compliance": "",
"lsb-description": "",
"lsb-release": "",
"lsb-codename": ""
},
"cpu-count": 2,
"cpu-name": "Intel(R) Xeon(R) CPU E5-2673 v4 @ 2.30GHz",
"total-memory": "4029248 kB",
"hw-details": {
"physical-virtual": "Virtual",
"vendor": "Microsoft Corporation",
"model": "7.0 (Virtual Machine)",
"age": "06/02/2017"
}
},
}
Я пытаюсь объединить дату создания (первая строка) и словарь системной информации.
ниже приведен код:
import pandas as pd
import json
from pandas.io.json import json_normalize
from numpy.core.numeric import outer
with open("C:\\Users\\esrilka\\Documents\\jsonFiles\\jsonFiles\\Mynew.json") as fi:
d = json.load(fi)
df = d['creation-date']
works_data = json_normalize(data=d['system-infos'], record_path=['os-details'],
meta=['hostname', 'domain'])
result=pd.concat([works_data,df],axis=1)
result.to_csv("C:\\Users\\esrilka\\Documents\\jsonFiles\\sample.csv", index=False)
Я получаю следующую ошибку:
Traceback (most recent call last):
File "C:\Users\esrilka\eclipse-workspace\My First PyDev Project\Newsample.py", line 11, in <module>
df = pd.DataFrame('creation-date')
File "C:\Users\esrilka\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pandas\core\frame.py", line 404, in __init__
raise ValueError('DataFrame constructor not properly called!')
ValueError: DataFrame constructor not properly called!