mysql随机分层抽样_数据抽样及样本不均衡处理

本文介绍了数据抽样的四种方法:简单随机抽样、分层抽样、等距抽样和整群抽样,并用Python实例演示了操作过程。接着讨论了样本不均衡问题,提出过抽样、欠抽样和权重调整等解决方案,特别提到了SMOTE算法在过抽样中的应用。
摘要由CSDN通过智能技术生成

一、数据抽样

抽样的组织形式有:

(1)简单随机抽样:按等概率原则直接从总体中抽取样本。该方法适用于个体分布均匀的场景。

(2)分层抽样:先对总体分组,再从每组中随机抽样。该方法适用于带有分类逻辑属性的数据。

(3)等距抽样:先将总体中的每个个体按顺序编号,计算抽样间隔,然后按照固定间隔抽取个体。该方法适用于个体分布均匀或呈现明显的均匀分布规律,无明显趋势或周期性规律的数据。

(4)整群抽样:将总体分为若干部分,(每个部分称为一群),以群为单位随机抽样,跟其他三种方法的不同在于该方法抽取的是群,而不是数据个体。

#读入数据

1 importnumpy as np2 importpandas as pd3 importrandom4 df=pd.read_csv(r'E:\data analysis\test\test2.csv')5 print(df.head(3))

id  var0  var1  var2  var3  var4  var5  var6  var7  var8

0  16144     1    14    13     5    25     5    45     6     1

1  16145     1    15    14     6    26     1     6     7     1

2  16146     1    16    15     7    27     2     1     8

#简单随机抽样

1 df_srs=pd.DataFrame.sample(df,n=20)2 print(df_srs.head(3))3 print(len(df_srs))

id  var0  var1  var2  var3  var4  var5  var6  var7  var8

99   17090     1    75     6    19    23     9     2     4     5

30   17021     1     6     5    19    55    16     8     9     2

107  17098     0     1    14     1    31    17     2    12     5

20

#等距抽样

1 sample_count=20

2 df_count=df.shape[0]3 width=df_c

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值