重新索引数据框架Pandas

时间:2016-10-21 12:57:15

标签: python pandas

我正在尝试使用Pandas拆分数据集以进行培训和测试。

data = pd.read_csv("housingdata.csv", header=None)
train = testing.sample(frac=0.6)
train.reindex()
test  = testing.loc[~testing.index.isin(train.index)]
print train
print test

当我打印数据时,我得到了

         0     1     2  3      4
9  0.17004  12.5  7.87  0  0.524
1  0.02731   0.0  7.07  0  0.469
5  0.02985   0.0  2.18  0  0.458
3  0.03237   0.0  2.18  0  0.458
7  0.14455  12.5  7.87  0  0.524
6  0.08829  12.5  7.87  0  0.524

         0     1     2  3      4
0  0.00632  18.0  2.31  0  0.538
2  0.02729   0.0  7.07  0  0.469
4  0.06905   0.0  2.18  0  0.458
8  0.21124  12.5  7.87  0  0.524

注意到,行索引被重新洗牌。如何重新索引两个数据集中的行?

然而,这不会改变全局设置。例如,

train.iloc[0,4]

给出0.524

1 个答案:

答案 0 :(得分:5)

正如@ EdChum的评论指出的那样,你所寻找的行为并不完全清楚。但是,如果您要做的就是从0, 1, 2 ... n开始提供新的数据帧索引,那么您可以使用reset_index()

train.reset_index(inplace=True, drop=True)
test.reset_index(inplace=True, drop=True)