我正在嘗試從股票市場 api(歷史數據)創建 DataFrame。當 api 獲取結果時,數據看起來排列得很好。但是當我創建 DataFrame 時,所有數據都出現在一行中。
應用程序接口:
historicParam={
"exchange": "NSE",
"symboltoken": "14977",
"interval": "FIFTEEN_MINUTE",
"fromdate": '2021-07-01 09:41',
"todate": '2021-07-29 10:41'}
a=obj.getCandleData(historicParam)
API 響應結構如下(示例)。它按順序包含日期時間、開盤價、最高價、最低價、收盤價和成交量值。
{'data': [['2021-07-01T09:45:00+05:30', 173.63, 173.7, 173.4, 173.48, 329246],
['2021-07-01T10:00:00+05:30', 173.48, 173.7, 173.29, 173.59, 284357],
['2021-07-01T10:15:00+05:30', 173.55, 173.66, 172.65, 173.14, 549551],
'errorcode': '',
'message': 'SUCCESS',
'status': True}
當我使用下面的行轉換上述數據時,所有數據都顯示在 DataFrame 的一行中
df = pd.DataFrame([a['data']])
df
結果:請點擊這裡查看輸出
如果我想在打開高低關閉卷列的 DataFrame 中獲取數據,我該怎麼辦?
df = pd.DataFrame([a['data']])
您正在將您的呼叫包裝a['data']
在list
. 刪除[]
並簡單地通過
df = pd.DataFrame(a['data'])
如果你想命名你的列,你也可以使用;
data = {'data': [['2021-07-01T09:45:00+05:30', 173.63, 173.7, 173.4, 173.48, 329246],
['2021-07-01T10:00:00+05:30', 173.48, 173.7, 173.29, 173.59, 284357],
['2021-07-01T10:15:00+05:30', 173.55, 173.66, 172.65, 173.14, 549551]],
'errorcode': '',
'message': 'SUCCESS',
'status': True}
pd.DataFrame(data['data'], columns=['date', 'open', 'high', 'low', 'close', 'volume'])
date open high low close volume
0 2021-07-01T09:45:00+05:30 173.63 173.70 173.40 173.48 329246
1 2021-07-01T10:00:00+05:30 173.48 173.70 173.29 173.59 284357
2 2021-07-01T10:15:00+05:30 173.55 173.66 172.65 173.14 549551
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句