Rozciąganie ramy panelu pandy wzdłuż mniejszej osi

Chciałbym rozszerzyć ramkę panelu danych wzdłuż mniejszej osi w pandach. Zaczynam tworzyćdic zDataFrames, aby wygenerować panel.

import pandas as pd
import numpy as np
rng = pd.date_range('1/1/2013',periods=100,freq='D')
df1 = pd.DataFrame(np.random.randn(100, 4), index = rng, columns = ['A','B','C','D'])
df2 = pd.DataFrame(np.random.randn(100, 4), index = rng, columns = ['A','B','C','D'])
df3 = pd.DataFrame(np.random.randn(100, 4), index = rng, columns = ['A','B','C','D'])
pf = pd.Panel({'df1':df1,'df2':df2,'df3':df3})

Zgodnie z oczekiwaniami, znalazłem panel o następujących wymiarach:

Wymiary: 3 (elementy) x 100 (major_axis) x 4 (minor_axis) Elementy osi: df1 do df3 Oś major_axis: 2013-01-01 00:00:00 do 2013-04-10 00:00:00 Oś minor_axis: A do D

Chciałbym teraz dodać nowy zestaw danych do osi Mniejszej:

pf['df1']['E'] = pd.DataFrame(np.random.randn(100, 1), index = rng)
pf['df2']['E'] = pd.DataFrame(np.random.randn(100, 1), index = rng)
pf['df2']['E'] = pd.DataFrame(np.random.randn(100, 1), index = rng)

Uważam, że po dodaniu tej nowej mniejszej osi kształt wymiarów tablicy paneli nie zmienił się:

shape(pf)

[3,100,4]

Jestem w stanie uzyskać dostęp do danych dla każdego z elementów w major_axis:

pf.ix['df1',-10:,'E']

2013-04-01 0.168205 2013-04-02 0.677929 2013-04-03 0.845444 2013-04-04 0.431610 2013-04-05 0.501003 2013-04-06 -0.403605 2013-04-07 -0.185033 2013-04-08 0.270093 2013-04-09 1.569180 2013-04-10 -1.374779 Freq: D, Nazwa: E

Ale jeśli rozszerzę krojenie tak, aby zawierało więcej niż jedną główną oś:

pf.ix[:,:,'E']

Następnie napotykam błąd mówiący, że „E” jest nieznane.

Czy ktoś może zasugerować, gdzie popełniam błąd lub lepszy sposób wykonywania tej operacji?

questionAnswers(2)

yourAnswerToTheQuestion