微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将多路复用套接字中的嵌套字典转换为 Pandas DataFrames?

如何解决如何将多路复用套接字中的嵌套字典转换为 Pandas DataFrames?

我正在尝试将这些嵌套字典转换为 DataFrame。我已经在网上搜索了更多关于这方面的信息,但在这种特殊情况下找不到太多信息。在尝试使用 json.loads() 进行转换后,我继续遇到的问题是“类型错误字符串索引必须是整数”错误

这是到目前为止我必须接收多个套接字数据的协程。

import asyncio
import pandas as pd
from binance import Asyncclient,BinanceSocketManager

async def main():
    client = await Asyncclient.create()

    bm = BinanceSocketManager(client)
    # start any sockets here,i.e a Trade socket
    ms = bm.multiplex_socket(['ltcusdt@kline_1m','btcusdt@kline_1m'])
    # then start receiving messages
    async with ms as mscm:
        while True:
            res = await mscm.recv()
            print(res)
            

if __name__ == "__main__":

    loop = asyncio.get_event_loop()
    loop.run_until_complete(main())
    

输出是嵌套字典,我只想获取 kline 定价数据(嵌套字典为“k”)并将其格式化为 Pandas 数据帧并存储在 HDF5 文件中以及直接存储到我目前拥有 OHLCV 的 Postgres 数据库创建的表。

{'stream': 'btcusdt@kline_1m','data': {'e': 'kline','E': 1627406952750,'s': 'BTCUSDT','k': {'t': 1627406940000,'T': 1627406999999,'i': '1m','f': 972731799,'L': 972733284,'o': '37761.23000000','c': '37753.06000000','h': '37761.24000000','l': '37745.74000000','v': '5.29347800','n': 1486,'x': False,'q': '199846.18941298','V': '1.87072500','Q': '70625.81836987','B': '0'}}}
{'stream': 'ltcusdt@kline_1m','E': 1627406953532,'s': 'LTCUSDT','f': 185284307,'L': 185284315,'o': '132.45000000','c': '132.41000000','h': '132.45000000','l': '132.40000000','v': '22.23228000','n': 9,'q': '2944.17206090','V': '3.11654000','Q': '412.66106140','B': '0'}}}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?