【发布时间】:2022-01-25 06:54:10
【问题描述】:
我有一个构造如下的默认字典:
data = defaultdict(dict)
symbol_list = [
'ETHUSDT',
'BTCUSDT'
]
for symbol in symbol_list:
data[symbol] = load_binance_data(c, symbol, '2021-12-23', timeframe='5m')
这是作为值存储在字典中的数据框的轴:
[DatetimeIndex(['2021-12-23 00:05:00', '2021-12-23 00:10:00',
'2021-12-23 00:15:00', '2021-12-23 00:20:00',
'2021-12-23 00:25:00', '2021-12-23 00:30:00',
'2021-12-23 00:35:00', '2021-12-23 00:40:00',
'2021-12-23 00:45:00', '2021-12-23 00:50:00',
...
'2021-12-24 19:05:00', '2021-12-24 19:10:00',
'2021-12-24 19:15:00', '2021-12-24 19:20:00',
'2021-12-24 19:25:00', '2021-12-24 19:30:00',
'2021-12-24 19:35:00', '2021-12-24 19:40:00',
'2021-12-24 19:45:00', '2021-12-24 19:50:00'],
dtype='datetime64[ns]', name='time', length=526, freq=None), Index(['open', 'high', 'low', 'close', 'volume'],
dtype='object')]
我想将此字典转换为具有多个索引的单个数据框,如下所示:
[DatetimeIndex(['2021-12-23 00:05:00', '2021-12-23 00:10:00',
'2021-12-23 00:15:00', '2021-12-23 00:20:00',
'2021-12-23 00:25:00', '2021-12-23 00:30:00',
'2021-12-23 00:35:00', '2021-12-23 00:40:00',
'2021-12-23 00:45:00', '2021-12-23 00:50:00',
...
'2021-12-24 19:05:00', '2021-12-24 19:10:00',
'2021-12-24 19:15:00', '2021-12-24 19:20:00',
'2021-12-24 19:25:00', '2021-12-24 19:30:00',
'2021-12-24 19:35:00', '2021-12-24 19:40:00',
'2021-12-24 19:45:00', '2021-12-24 19:50:00'],
dtype='datetime64[ns]', name='time', freq=None),
MultiIndex([
('open', 'ETHUSDT'),
('open', 'BTCUSDT'),
('high', 'ETHUSDT'),
('high', 'BTCUSDT'),
('low', 'ETHUSDT'),
('low', 'BTCUSDT'),
('close', 'ETHUSDT'),
('close', 'BTCUSDT'),
('volume', 'ETHUSDT'),
('volume', 'BTCUSDT')],
names=['Attributes', 'Symbols'])]
我该如何进行这种转换?
提前致谢,
【问题讨论】:
标签: python dataframe dictionary multi-index defaultdict