Pandas:打乱数据并切分
2018-08-21 本文已影响132人
ACphart
描述
- 在机器学习中,拿到一堆训练数据一般会需要将数据切分成训练集和测试集,或者切分成训练集、交叉验证集和测试集,为了避免切分之后的数据集在特征分布上出现偏倚,我们需要先将数据打乱,使数据随机排序,然后在进行切分。
- 需要用的方法如下:
注:df
代表一个pd.DataFrame
-
df = df.sample(frac=1.0)
: 按100%的比例抽样即达到打乱数据的效果 -
df = df.reset_index()
:打乱数据之后index
也是乱的,如果你的index
没有特征意义的话,直接重置就可以了,否则就在打乱之前把index
加进新的一列,再生成无意义的index
-
train = df.loc[0:a]
: 进行切分操作,切分比例看情况定 -
cv = df.loc[a+1:b]
: -
test = df.loc[b+1:-1]
: