我有个DataFrame,有什么办法可以把其中的行打乱,随机重新排列的,谢谢!
3个回答
pandas的dataframe有自带的sample功能,当设参数frac=1的时候,就相当于对行做shuffle
df = df.sample(frac=1)
如果重新排列之后希望index还是从0开始排序的话,可以这样操作
df = df.sample(frac=1).reset_indedx(drop=True)
用np.random.permutation构建一个随机序列,作为index来对df进行shuffle处理
from np.random import permutation
idx = permutation(len(df))
df[idx]
随机重排的属于叫做shuffle,也就是“洗牌”。
sklearn里有洗牌的函数。
from sklearn.utils import shuffle
df = shuffle(df)