使用非唯一索引对象创建Pandas面板

时间:2016-04-06 02:01:16

标签: python pandas

我有以下数据文件LawSchoolSample.csv

LSAT,GPA
622,3.23
542,2.83
579,3.24
653,3.12
606,3.09

我想创建一个pandas数据帧,然后从此数据帧重新采样B次以形成一个pandas面板。这是我的尝试(欢迎批评):

import pandas as pd

df = pd.read_csv("LawSchoolSample.csv")

B = 3
resamples = {}

for i in range(0,B):
    name = "Resample {}".format(i)
    resamples[name] = df.sample(5,replace=True)

print resamples

resamples_panel = pd.Panel(resamples)

除最后一行外,一切顺利:resamples_panel = pd.Panel(resamples)。错误是:

pandas.core.index.InvalidIndexError: Reindexing only valid with uniquely valued Index objects

我有两个问题,那么:

  1. 使用panel值得吗?或者,resamples的数据结构是否足够好?
  2. dataframes添加到面板的首选方法是什么?

1 个答案:

答案 0 :(得分:0)

长期计划是弃用Panel,请参阅pandas文档:

  

在未来的熊猫版本中,我们将弃用Panel和其他版本   > 2个ndim对象。为了提供连续性,所有NDFrame对象都获得了.to_xarray()方法以便转换为   xarray对象,具有类似熊猫的接口,用于> 2 ndim。   (GH11972)

http://pandas.pydata.org/pandas-docs/version/0.18.0/whatsnew.html#to-xarray