我想随机分为5组DataFrame的行。它们不必具有相同的尺寸。有什么想法吗?
答案 0 :(得分:4)
您可以通过为每一行分配一个组编号然后按该编号分组来形成子数据框列表:
import numpy as np
num_groups = 5
df['group'] = np.random.randint(num_groups, size=len(df))
dfs = [grp for key, grp in df.groupby('group')]
如果您不希望在原始DataFrame中添加group
列,则可以使用
import numpy as np
num_groups = 5
dfs = [grp for key, grp in df.groupby(np.random.randint(num_groups, size=len(df)))]