Как преобразовать список в DataFrame в Python (Binance Futures API) - PullRequest
0 голосов
/ 14 марта 2020

Используя Binance Futures API, я пытаюсь получить правильную форму своей позиции в отношении криптовалют. Используя код

from binance_f import RequestClient
request_client = RequestClient(api_key= my_key, secret_key=my_secet_key)
result = request_client.get_position()

я получаю следующий результат

[{"symbol":"BTCUSDT","positionAmt":"0.000","entryPrice":"0.00000","markPrice":"5455.13008723","unRealizedProfit":"0.00000000","liquidationPrice":"0","leverage":"20","maxNotionalValue":"5000000","marginType":"cross","isolatedMargin":"0.00000000","isAutoAddMargin":"false"}]

Команда type указывает, что это список, однако добавление в конце кода print(result) дает:

[<binance_f.model.position.Position object at 0x1135cb670>]

Что сбивает с толку, потому что кажется, что это не список (на самом деле, отладка указывает на объект типа Position). Использование PrintMix.print_data(result) дает:

data number 0 :
entryPrice:0.0
isAutoAddMargin:True
isolatedMargin:0.0
json_parse:<function Position.json_parse at 0x1165af820>
leverage:20.0
liquidationPrice:0.0
marginType:cross
markPrice:5442.28502271
maxNotionalValue:5000000.0
positionAmt:0.0
symbol:BTCUSDT
unrealizedProfit:0.0

Теперь это похоже на JSON формат ... Но это список. Я в замешательстве - есть идеи, как я могу преобразовать результат в правильный DataFrame? Так что столбцы Symbol, PositionAmt, entryPrice, etc.

Спасибо!

1 Ответ

0 голосов
/ 15 марта 2020

Ваш главный вопрос остается, как вы написали в шапке, вы не должны путать. В вашем случае у вас есть список Position объекта, вы можете увидеть структуру Position в GitHub этой библиотеки

В любом случае, чтобы ответить на вопрос, используйте следующее:

df = pd.DataFrame([t.__dict__ for t in result])

Для получения дополнительных опций и информации, пожалуйста, прочитайте отличные ответы на этот вопрос

Удачи!

...