我是靠谱客的博主 无聊小土豆,最近开发中收集的这篇文章主要介绍pandas样本分层抽样(可以自己设置每一个类别抽取多少个样本),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

import numpy
import pandas as pd

data = pd.read_csv('data.csv')
numpy.random.seed(seed=2)  # 如果使用相同的seed( )值,则每次生成的随即数都相同,

# 用groupby进行数据的分组,根据班级
# gbr = data.groupby('class')
# 获取分组后gbr的数据
# gbr.groups

# 分层抽样字典定义 组名:数据个数
typicalNDict = {1: 5000, 0: 5000}


# 函数定义
def typicalsamling(group, typicalNDict):
    name = group.name
    n = typicalNDict[name]
    return group.sample(n=n)


#    返回值:抽样后的数据框
result = data.groupby('class').apply(typicalsamling, typicalNDict)
print(result.head())
result.to_csv('smallData.csv', index=False)

我们可以使用pandas中value_counts方法查看每个类别下面具体有多少个样本,检查我们代码是否正确(这个抽样是随机的)

print(df['class'].value_counts())

最后

以上就是无聊小土豆为你收集整理的pandas样本分层抽样(可以自己设置每一个类别抽取多少个样本)的全部内容,希望文章能够帮你解决pandas样本分层抽样(可以自己设置每一个类别抽取多少个样本)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部