【发布时间】:2019-08-25 11:36:02
【问题描述】:
我正在检索实时财务数据。 每隔 1 秒,我会拉出以下列表:
[{'symbol': 'ETHBTC', 'price': '0.03381600'}, {'symbol': 'LTCBTC', 'price': >'0.01848300'}...]
我们的目标是将此列表放入一个已经存在的 pandas DataFrame 中。
到目前为止,我所做的是将这个字典列表转换为 pandas DataFrame。我的问题是符号和价格在两列中。我想将符号作为 DataFrame 标头,并每 1 秒添加一个包含价格值的新行。
marketInformation = [{'symbol': 'ETHBTC', 'price': '0.03381600'}, {'symbol': 'LTCBTC', 'price': >'0.01848300'}...]
data = pd.DataFrame(marketInformation)
header = data['symbol'].values
newData = pd.DataFrame(columns=header)
while True:
realTimeData = ... // get a new marketInformation list of dict
newData.append(pd.DataFrame(realTimeData)['price'])
print(newData)
不幸的是,打印出来的 DataFrame 总是空的。我希望每秒添加一个新行,并为当前时间的每个符号添加新价格。 我打印了以下部分:
pd.DataFrame(realTimeData)['price']
它给了我一个 pandas.core.series.Series 对象,其长度等于符号的数量。
怎么了?
【问题讨论】:
标签: python-3.x pandas list real-time