加权抽样

使用 Python 分析调查数据

EbunOluwa Andrew

Data Scientist

什么是加权抽样?

  • 不等概率
  • 允许在数据收集阶段纠正问题

桌上的天平,砝码,衡器

使用 Python 分析调查数据

加权抽样常用变量

  • 人口特征,如性别、年龄、地区、教育
  • 考虑参与与未参与研究的差异

家庭,不同年龄人群线描风格

使用 Python 分析调查数据

基于单元的加权

1 https://www.geopoll.com/blog/weighting-survey-data-raking-cell-weighting/
使用 Python 分析调查数据

基于单元的加权

1 https://www.geopoll.com/blog/weighting-survey-data-raking-cell-weighting/
使用 Python 分析调查数据

基于单元的加权

1 https://www.geopoll.com/blog/weighting-survey-data-raking-cell-weighting/
使用 Python 分析调查数据

基于单元的加权

1 https://www.geopoll.com/blog/weighting-survey-data-raking-cell-weighting/
使用 Python 分析调查数据

用 Python 分析青少年消费模式

yp_survey
| Gender | Age | Entertainment |
|--------|-----|---------------|
| female |  19 | Agree         |
| female |  20 | Agree         |
| male   |  19 | Agree         |
| female |  19 | Disagree      |
| female |  24 | Disagree      |
| male   |  18 | Agree         |
| male   |  18 | Agree         |
| male   |  20 | Disagree      |
使用 Python 分析调查数据

用 Python 分析青少年消费模式

import pandas as pd
yp_crosstab = pd.crosstab(
  yp_survey['Gender'],
  yp_survey['Entertainment'])
yp_crosstab
yp_crosstab.plot.barh()
|        | Agree | Disagree |
|--------|-------|----------|
| female |    81 |       84 |
| male   |    84 |       46 |

使用 Python 分析调查数据

用 Python 分析青少年消费模式

survey = yp_survey.groupby(['Gender', 'Entertainment'])['Age'].count().reset_index()

survey.columns = ['Gender', 'Entertainment', 'Respondents'] survey
| Gender | Entertainment | Respondents |
|--------|---------------|-------------|
| female | Agree         |          81 |
| female | Disagree      |          84 |
| male   | Agree         |          84 |
| male   | Disagree      |          46 |
使用 Python 分析调查数据

用 Python 分析青少年消费模式

survey['% total respondents'] = survey.Respondents * 100./survey.Respondents.sum()
survey['% of population'] = [35, 25, 20, 20]
survey['Weight'] = survey['% of population']/survey['% total respondents']
survey['Weighted Respondents'] = survey.Weight * survey.Respondents
使用 Python 分析调查数据

用 Python 分析青少年消费模式

survey[['Gender','Entertainment',
        'Respondents','Weighted Respondents']].set_index(
  ['Gender','Entertainment']).plot.barh()

使用 Python 分析调查数据

Passons à la pratique !

使用 Python 分析调查数据

Preparing Video For Download...