如何将数据帧拆分为多个数据帧,其中每个数据帧包含相等但随机的数据?它不是基于特定列.
例如,我在数据帧中有一个100行和30列.我想将这些数据分成5个批次.我应该在每个数据框中有20个记录,每个数据框有相同的30列,并且所有5个批次都没有重复,我选择行的方式应该是随机的.我不希望在单个列上随机选择.
我认为我将使用index和numpy并将它们分成多个并使用它来分割数据帧的一种方法.想要看看有人有一个简单的熊猫方式.
如果您不关心可能包含某些相同信息的新数据帧,您可以使用samplewhere frac指定所需数据帧的分数
df1 = df.sample(frac=0.5) # df1 is now a random sample of half the dataframe
Run Code Online (Sandbox Code Playgroud)
编辑:
如果您想避免重复,可以使用shufflefromsklearn
from sklearn.utils import shuffle
df = shuffle(df)
df1 = df[0:3]
df2 = df[3:6]
Run Code Online (Sandbox Code Playgroud)