基于 id key 的随机数据集

Random dataset based on id key

随机打乱数据集中的行 限制:只有行不能洗牌,列之间的值不能洗牌

这个table的例子:

如何获取不同的行?例如第 7 行变为第 2 行

您可以使用 DataFrame.sample(...) 方法获得打乱的数据帧,例如:

import pandas as pd
import numpy as np

df = pd.DataFrame(data=np.random.rand(10,3), columns=['A', 'B', 'C'])
df = df.sample(frac=1)

这里 frac=1 告诉函数随机排列行而不是对一些行进行采样。这将导致类似:

   A         B         C
6  0.539230  0.726644  0.904020
9  0.173626  0.774850  0.914098
5  0.114591  0.344212  0.339833
4  0.159820  0.604845  0.029802
3  0.826250  0.765909  0.422308
1  0.110008  0.523306  0.288052
2  0.616792  0.932205  0.659934
8  0.707413  0.794188  0.214229
7  0.409670  0.706913  0.232815
0  0.048167  0.748322  0.014002