4

我想用不同的数据框创建面板,我尝试编写一个函数来返回这个面板。我使用了一些已经编写好的函数createNewDf(i),它根据给定的数值从现有数据中返回 dataFrame。

def panelCreation():
    dp1 = Panel({})
    for i in range(1,3):
        name = 'X' + str(i)
        name = createNewDf(i)
    dp1.update(name)       # This does not work
    return dp1

我找不到要代替的方法的名称dp1.update(name)

4

1 回答 1

6

仅从 DataFrame 的字典中创建 Panel 怎么样?

In [10]: dd = {}

In [11]: for i in range(1, 3):
   ....:     name = 'X' + str(i)
   ....:     dd[name] = DataFrame(np.random.randn(3,3))
   ....:     

In [12]: Panel(dd)
Out[12]: 
<class 'pandas.core.panel.Panel'>
Dimensions: 2 (items) x 3 (major) x 3 (minor)
Items: X1 to X2
Major axis: 0 to 2
Minor axis: 0 to 2

所以像:

def panelCreation():
    dd = {}
    for i in range(1,3):
        name = 'X' + str(i)
        dd[name] = createNewDf(i)
    return Panel(dd)
于 2012-09-27T10:47:00.467 回答