在 Pandas 中,如果想要对数据集进行随机抽样,需要使用 sample() 函数。
语法格式介绍:
DataFrame.sample(n=None, frac=None, replace=False, weights=None, random_state=None, axis=None)
参数说明:
1、n:表示要抽取的行数。
2、frac:表示抽取的比例,比如 frac=0.5,代表抽取总体数据的50%。
3、replace:布尔值参数,表示是否以有放回抽样的方式进行选择,默认为 False,取出数据后不再放回。
weights 可选参数,代表每个样本的权重值,参数值是字符串或者数组。
random_state 可选参数,控制随机状态,默认为 None,表示随机数据不会重复;若为 1 表示会取得重复数据。
axis 表示在哪个方向上抽取数据(axis=1 表示列/axis=0 表示行)。
示例数据
import pandas as pd
#创建DataFrame数据
info = pd.DataFrame({'name': ['李四', '王五', '小贝', '虞姬'],
'age': [18, 19, 20, 18],
'sex': ['男', '男', '女','女' ],
'class': ['5班', '4班', '5班','3班' ]})
print(info)
import pandas as pd
#创建DataFrame数据
info = pd.DataFrame({'name': ['李四', '王五', '小贝', '虞姬'],
'age': [18, 19, 20, 18],
'sex': ['男', '男', '女','女' ],
'class': ['5班', '4班', '5班','3班' ]})
#默认随机选择两行
print(info.sample(n=2))
import pandas as pd
#创建DataFrame数据
info = pd.DataFrame({'name': ['李四', '王五', '小贝', '虞姬'],
'age': [18, 19, 20, 18],
'sex': ['男', '男', '女','女' ],
'class': ['5班', '4班', '5班','3班' ]})
#随机选择两列
print(info.sample(n=2,axis=1))