python - Pandas 数据框的随机抽样(行和列)

标签 python numpy pandas

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

df_sample = df.sample(frac=0.007)

但是我需要的是上述数据框中的随机行和随机列。

Df 当前为 56Kx8.5k。如果我想说 500x1000,其中 500 和 1000 都是随机抽样的,该怎么做?

我认为一种方法是做类似的事情

df.columns 获取列名列表。

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

最佳答案

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

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

对于第一个,axis=0 默认。第一个采样采样行,第二个采样考虑列。

关于python - Pandas 数据框的随机抽样(行和列),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38087032/

相关文章:

python - 如何向数据框中的每一列输入一些值

python - Numpy 产生错误的值

python - numpy argsort 可以返回较低的关系索引吗?

python - 按标签选择并写入 csv

Python 按顺序将 2 个列表和 Pandas DataFrame 写入 csv/excel

python - Pandas str.replace 的管道字符不起作用?

python - 根据日期创建多个列

python - 如何组织我已经工作的插件系统的文件结构?

Python:如果可能的话,使私有(private)类方法始终静态?

applymap 中的 Python 引用行