怎么把一个大的dataframe按行分割成若干个小的dataframe。

  统计/机器学习 Python    浏览次数:9664        分享
0

比如我的dataframe有一百行。现在我想把它分成10(平均,无放回)个小的dataframe?即返回10个dataframe

 

data2world   2018-08-23 10:46



   1个回答 
1

基本思路就是先生成0到99的随机排列,作为index,然后用前10个数来产生第一个小dataframe,然后类推。

你可以把10个小dataframe存在dict里面,比如叫sub_df。

sub_df = {}
rand_ind = np.random.permutation(100)
for i in range(10):
    indices = rand_ind[10*i : 10*i + 10]
    sub_df[i] = df.iloc[indices]

我自己测试了一下,应该没有问题

SofaSofa数据科学社区DS面试题库 DS面经

okayguy   2018-08-23 11:07

嗯嗯,get到了,thx - data2world   2018-08-23 11:16


  相关主题

python里的<<或者>>符号是什么意思?   2回答

Jupiter notebook里一个cell显示多个dataframe   1回答

Jupiter notebook中显示一个dataframe所有的列   2回答

gc.collect()返回值是什么意思   1回答

python的dataframe如何重新排列行或者列   1回答

python倒序的range   1回答

怎么把statsmodels训练的模型本地保存?   1回答

python函数:   1回答

怎么合并(串联)两个dataframe?   1回答

如何将csv中多行变成一行   2回答

python里有没有类似excel里的那种数据透视表?   1回答

引用报错ImportError: No module named stats   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!