如何将websocket的结果保存到pandas中?

时间:2018-04-14 17:22:36

标签: python pandas websocket

我使用以下代码行将数据从websocket流式传输到我的python应用程序中:

wsClient = GDAX.WebsocketClient(url="wss://ws-feed.gdax.com", products="LTC-USD")

wsClient.start()

我无法将wsClient.start()的结果保存到pandas数据帧中。不确定为什么记录不附加这行代码,任何人都可以帮助我理解为什么不:

df1 = pd.DataFrame()
for i in wsClient.start():
    df1.append(wsClient.start())

提前谢谢你。

1 个答案:

答案 0 :(得分:2)

如果查看documentation for append,您会看到它返回结果DataFrame,并且不会更改调用append的DataFrame,也不会更改作为参数的DataFrame。< / p>

在你的循环体中,你可能意味着类似

    df1 = df1.append(wsClient.start())

正如DJK在下面正确说明的那样,为了获得更有效的替代方案,您可以先创建所有DataFrame的列表,然后附加:

dfs = []
for i in wsClient.start():
    dfs.append(wsClient.start())
df1 = pd.concat(dfs)