Я хотел бы помочь вам разобраться, как развернуть pandas dataframe в таблицу с заданным списком индексов и столбцов (вместо поведения по умолчанию, где индексы и столбцы автоматически выбирается пандами). Извините, если это тривиально. Я новичок в python/pandas.Pandas pivot_table с использованием заданного списка индексов и столбцов
Рассмотрим следующий dataframe:
import pandas
import numpy as np
import datetime
data = {
'ticker' : np.array(['AAPL',
'AAPL',
'IBM',
'XOM']),
'trade_date' : np.array([datetime.datetime(2015,01,01),
datetime.datetime(2015,04,02),
datetime.datetime(2099,01,01),
datetime.datetime(2015,03,01)]),
'price' : np.array([10.0, 15.6, 20.9, 13.5])
}
x = pandas.DataFrame(data)
Upon pivot_table,
x.pivot_table(values = "price", index = "trade_date", columns = "ticker")
результат является:
ticker AAPL IBM XOM
trade_date
2015-01-01 10.0 NaN NaN
2015-03-01 NaN NaN 13.5
2015-04-02 15.6 NaN NaN
2099-01-01 NaN 20.9 NaN
Однако, что я хочу:
ticker A AA AAPL IBM XOM
trade_date
2015-01-01 NaN NaN 10.0 NaN NaN
2015-01-02 NaN NaN NaN NaN NaN
2015-03-01 NaN NaN NaN NaN 13.5
2015-04-02 NaN NaN 15.6 NaN NaN
2099-01-01 NaN NaN NaN 20.9 NaN
В pivot_table() отсутствуют какие-либо положения для принудительного набора индексов и столбцов.
Есть ли быстрый способ сделать это? Наборы данных довольно велики, и это поможет сделать это быстро.