Импорт:
import pandas as pd
Создание основного фрейма данных:
df_main = pd.DataFrame()
Данные: не в формате json
data = {'accountType': 'CFD',
'accountInfo': {'balance': 0,
'deposit': 0.0,
'profitLoss': 0.0,
'available': 0},
'currencyIsoCode': 'GBP',
'currencySymbol': '£',
'currentAccountId': 'XXXX',
'lightstreamerEndpoint': 'https://demo-apd.marketdatasystems.com',
'accounts': [{'accountId': 'xxx',
'accountName': 'Demo-Spread bet',
'preferred': False,
'accountType': 'SPREADBET'},
{'accountId': 'xxx',
'accountName': 'Demo-CFD',
'preferred': True,
'accountType': 'CFD'}],
'clientId': 'xxx',
'timezoneOffset': 1,
'hasActiveDemoAccounts': True,
'hasActiveLiveAccounts': True,
'trailingStopsEnabled': False,
'reroutingEnvironment': None,
'dealingEnabled': True}
DataFrame.from_dict: каждый ключ является индексом
df = pd.DataFrame.from_dict(data, orient='index')
Транспонировать его: каждый ключ теперь является заголовком столбца изначения в строках
df_trans = df.transpose()
Добавить к df_main
: каждая запись добавляется к df_main
df_main = df_main.append(df_tras, ignore_index=True)
Пожалуйста, не забудьте поставить галочку рядом с выбранным ответом
Это допустимый формат json ваших данных: Вставьте его в файл и назовите файл data.json
, затемиспользуйте pd.read_json('data.json')
, и вы получите тот же результат, что и df = pd.DataFrame.from_dict(data, orient='index')
.
{
"data":{
"accountType":"CFD",
"accountInfo":{
"balance":0,
"deposit":0.0,
"profitLoss":0.0,
"available":0
},
"currencyIsoCode":"GBP",
"currencySymbol":"£",
"currentAccountId":"XXXX",
"lightstreamerEndpoint":"https://demo-apd.marketdatasystems.com",
"accounts":[
{
"accountId":"xxx",
"accountName":"Demo-Spread bet",
"preferred":"False",
"accountType":"SPREADBET"
},
{
"accountId":"xxx",
"accountName":"Demo-CFD",
"preferred":"True",
"accountType":"CFD"
}
],
"clientId":"xxx",
"timezoneOffset":1,
"hasActiveDemoAccounts":"True",
"hasActiveLiveAccounts":"True",
"trailingStopsEnabled":"False",
"reroutingEnvironment":"None",
"dealingEnabled":"True"
}
}