Pandas sample()用于从DataFrame中随机选择行和列。如果要从大量数据集构建模型,则必须随机选择通过函数 sample 完成的较小数据样本。

语法

DataFrame.sample(n=None, frac=None, replace=False, weights=None, random_state=None, axis=None)

参数

  • n                            -  这是一个可选参数,由整数值组成,用于定义所生成的随机行的数量。
  • frac                       -  这也是一个可选参数,由浮点值组成,并返回浮点值*数据帧值的长度。不能与参数n一起使用。
  • replace                -  它由布尔值组成。如果为true,则返回带有替换的样本。替换的默认值为false。
  • weights               -  它也是一个可选参数,由类似于str或ndarray的参数组成。默认值" None"。
  • random_state   -  它也是一个可选参数,由整数或numpy.random.RandomState组成。
  • axis                      -  这也是一个可选参数,由整数或字符串值组成。 0或" "和1或"列"。

返回值

它返回与调用者相同类型的新对象,其中包含从调用者对象中随机采样的n个项目。

例1

import pandas as pd
info = pd.DataFrame({'data1': [2, 4, 8, 0],
'data2': [2, 0, 0, 0],
'data3': [10, 2, 1, 8]},
index=['John', 'Parker', 'Smith', 'William'])
info
info['data1'].sample(n=3, random_state=1)
info.sample(frac=0.5, replace=True, random_state=1)
info.sample(n=2, weights='data3', random_state=1)

输出

       data1    data2    data3
John     2	     2	     10
William	 0	     0	     8

例2

在此示例中,我们获取一个csv文件,并使用示例从DataFrame中提取随机行。

无涯教程网

名为 aa 的csv文件,其中包含以下数据集:

Pandas DataFrame.sample()

让我们编写一个代码,从上述数据集中提取随机行:

# importing pandas package 
import pandas as pd 
# define data frame from csv file  
data = pd.read_csv("aa.csv") 
 # randomly select one row  
row1 = data.sample(n = 1)   
# display row
row1
# randomly select another row 
row2 = data.sample(n = 2) 
# display  row
row2

输出

          Name         Hire Date    Salary      Leaves Remaining
2     Parker Chapman    02/21/14     45000.0      10
5     Michael Palin     06/28/13     66000.0      8

这一章你学到了什么?来做个笔记,好记忆不如烂笔头! 如果觉得对您有帮助,麻烦帮分享给您的朋友。

祝学习愉快! (如果觉得不正确,选中要修改的内容->右键->编辑)

点我分享笔记