Pandas数据帧(行和列)的随机抽样

时间:2016-06-28 22:03:31

标签: python numpy pandas

我知道如何从pandas数据框中随机抽取几行。假设我有一个数据框df,然后得到一小部分行,我可以这样做:

df_sample = df.sample(frac=0.007)

然而我需要的是上面的随机行以及上面数据框中的随机列。

目前Df为56Kx8.5k。如果我想说500x1000 500和1000随机采样怎么办?

我认为一种方法就是做

之类的事情

df.columns获取列名列表。

然后对这个列列表的索引进行一些随机抽样,并使用该随机索引过滤掉剩余的列?

1 个答案:

答案 0 :(得分:7)

只需使用相应的轴参数调用sample两次:

df.sample(n=500).sample(n=1000, axis=1)

对于第一个,默认情况下,轴= 0。第一个采样采样线,而第二个采样列。