本文作者:杨慧琳

文字编辑:李钊颖

技术总编:高金凤

重磅!!!爬虫俱乐部将于2019年10月2日至10月5日在湖北武汉举行Python编程技术培训,本次培训采用理论与案例相结合的方式,旨在帮助零基础学员轻松入门Python,由浅入深学习和掌握Python编程技术,尤其是爬虫技术和文本分析技术。该培训目前在火热招生中,点击《爬虫俱乐部2019十一Python编程技术培训报名啦!》或点击文末阅读原文,了解培训详细信息,抓紧时间报名吧!在进行数据分析或模型估计时,经常需要对数据进行标准化处理(normalization)。例如,在一个数据集中变量A的取值区间为[0,10],变量B的取值区间为[100,1000]。若直接采用原始数据进行分析,由于变量B量纲更大,这样可能造成模型估计偏误。借助数据标准化处理,可以将原始数据转换为无量纲、无数量级差异的标准化数值。通过将数据按照一定比例缩放,使变量取值落于一个特定区间或服从特定分布,消除了量纲、变量自身变异和数值大小的影响,从而便于对不同变量和数据进行综合分析、比较。在介绍Stata软件的数据标准化操作之前,首先了解两种常用的数据标准化方法。(一)  数据标准化方法

1、离差标准化

离差标准化是令变量的观测值减去该变量的最小值,然后除以该变量的极差,把数值标准化至Z分数,即:

经过离差标准化之后,变量的正、负数值均转化为正向数值,全部取值将处于[0,1]的范围内,相当于将一组数据按照大小排序压缩到一个小区间内。离差标准化是消除观测值量纲和变异大小因素影响的最简单方法。

2、标准差标准化

标准差标准化也称作Z-score标准化,当某个变量的最大、最小值未知,或存在超出取值范围的离群值(outliers)时,则不适合计算极差,此时可采用标准差标准化处理方式。在计算过程中,令变量观测值减去该变量的平均值,然后除以该变量的标准差,即:

经过上述处理,变量约有一半取值小于0,一半取值大于0,近似服从N(0,1)的标准正态分布。但采用该种方法,原来数值较大的观测值依然可能对估计结果产生显著影响,需进一步消除变量间的差异性。

(二)Stata操作

1、离差标准化假设存在某一变量data,其描述性统计结果如下:

依据离差标准化方法介绍,可以直接调用内存中的返回值,计算变量data标准化后的数值:

return list //查看返回值gen a = (data-r(min))/(r(max)-r(min))sum a

通过以上处理,便生成了变量data的标准化数值,取值区间为[0,1],标准差也大大减少。在Stata中,也有一个便捷的离差标准化外部命令nscale。在使用之前,需通过“ssc install nscale”进行安装。其基本语法如下:nscale varlist [,options]nscale命令几个主要的选项:generate(namelist):生成新变量namelist,用于存放标准化后的数值prefix(name):生成含有特定前缀name的新变量,用于存放标准化后的数值missing(#):若原观测值取值为#,则将标准化数值替换为缺失值“.”up:与missing(#)选项连用,若原观测值取值不小于#,则将标准化数值替换为缺失值“.”down:与missing(#)选项连用,若原观测值取值不大于#,则将标准化数值替换为缺失值“.”在本文中,我们对变量data的所有取值进行标准化,并新生成一个标准化变量new_data,如下:

nscale data, pre(new_)sum new_*

如上,使用命令nscale标准化后的变量与直接通过公式计算得出的标准化数值结果一致。2、标准差标准化

依然使用变量data进行标准差标准化处理,基于以上理论介绍,执行如下计算程序:

sum data  //输入return list可查看返回值gen b = (data-r(mean))/r(sd)

对新生成的标准化变量b进行描述性统计,并绘制其频率直方图和正态分布概率密度曲线。执行程序:

sum bhist b, bin(100) norm

由上,经过标准差标准化处理后,新变量b的方差为1,均值为-4.68×10-11,非常接近于0,整体数值大致服从于N(0,1)分布。此外,Stata内置的std()函数,可以快速实现以上标准差标准化计算过程。std()函数的语法如下:

std(exp) [, mean(#) std(#)]

其中,括号内为需要进行标准化的变量exp,选项mean(#) 和std(#)允许用户自定义新变量的均值和标准差,默认生成均值为0、标准差为1的标准化变量。在本例中,直接使用该函数对变量data进行标准差标准化,程序和结果如下:

egen new1_data = std(data)   //默认均值为0,标准差为1sum new1_data

通过观察可知,采用标准差标准化方法时,新生成变量的均值、方差并不严格为0、1。在实际操作中,还需依据变量自身特点,探索最适用的标准化方法。

对爬虫俱乐部的推文累计打赏超过1000元我们即可给您开具发票,发票类别为“咨询费”。用心做事,只为做您更贴心的小爬虫!

往期推文推荐

字符串方法介绍

Jupyter Notebook的使用

Stata16新功能之“框架”——frlink连接多个数据集(3)

Stata16新功能之“框架”——基础命令大合集(2)

三分钟教你读懂Python报错

解析XML文件

命令更新之reg2docx:将回归结果输出到word

命令更新之t2docx——报告分组均值t检验

爬虫俱乐部2019十一Python编程技术培训报名啦!

数据类型——Dict、Set与Frozenset简析

数据类型介绍——tuple、list和range对象把pdf文件批量转成docx文件格式化字符串方法的比较朝花夕拾—— 如何输出内存中的矩阵与绘图Stata16新功能——定义图形元素的绝对大小将数值型计算“一网打尽”——(1)Stata16新功能之“框架”——读入多个数据集(1)手持Python,斗图不输!朝花夕拾——cnstock与cntrade强强联合

关于我们

微信公众号“爬虫俱乐部”分享实用的stata命令,欢迎转载、打赏。爬虫俱乐部是由李春涛教授领导下的研究生及本科生组成的大数据分析和数据挖掘团队。

此外,欢迎大家踊跃投稿,介绍一些关于stata的数据处理和分析技巧。

投稿邮箱:statatraining@163.com

投稿要求:1)必须原创,禁止抄袭;2)必须准确,详细,有例子,有截图;注意事项:1)所有投稿都会经过本公众号运营团队成员的审核,审核通过才可录用,一经录用,会在该推文里为作者署名,并有赏金分成。2)邮件请注明投稿,邮件名称为“投稿+推文名称”。3)应广大读者要求,现开通有偿问答服务,如果大家遇到关于stata分析数据的问题,可以在公众号中提出,只需支付少量赏金,我们会在后期的推文里给予解答。

stata最大值最小值命令_用Stata实现数据标准化相关推荐

  1. stata最大值最小值命令_听说会Stata的人,数学不会太差?

    本文作者:张馨月 文字编辑:王碧琪 技术总编:李朋冲 爬虫俱乐部将于2020年1月5日至11日在湖北武汉举行为期一周的Stata编程技术定制培训,此次采取初级班和高级班分批次培训.课程通过案例教学模式 ...

  2. stata最大值最小值命令_Stata:统计软件中的轻骑兵

    欢迎关注 经管学苑 (ID:jingguan100) 由南开大学数量经济研究所所长王群勇教授及其学术团队主办,旨在定期与大家分享计量经济学的相关理论及软件使用技巧,覆盖经济学.管理学.社会学.政治学等 ...

  3. stata最大值最小值命令_stata基本操作来袭,简单易学,必看!

    来源:慕学堂 编辑:学长 No.1 stata界面介绍 首先,在打开Stata软件之后,你可以看到Stata的界面主要分为5个部分:Results(结果):Command(命令):Review(历史) ...

  4. stata最大值最小值命令_Stata: 双栏模型简介 (Doublehurdle model)

    编译:李琼琼 (山东大学) Stata 连享会:  知乎 | 简书 | 码云 | CSDN 点击查看完整推文列表 2020寒假Stata现场班 北京, 1月8-17日,连玉君-江艇主讲 2020寒假S ...

  5. stata中计算公式命令_#stata中哪个命令和stats命令等价#stata中计算命令

    f的临界值在stata中怎么输入命令计算 stata怎么用命令计算有几个变量 dis `c(k)'可以看到数据中含有的变量的个数. 不过这个命令会把"股票代码"和"日期& ...

  6. stata中计算公式命令_珠联璧合:把Jupyter Notebook 作为stata的IDLE

    学过python的都知道Jupyter Notebook是python中的一款非常好用的网页版在线编辑器,而经济学和统计学常用的数据处理软件是stata,stata自带的do-file编辑器无论是从界 ...

  7. stata中心化处理_带有stata第2部分自定义配色方案的covid 19可视化

    stata中心化处理 This guide will cover an important, yet, under-explored part of Stata: the use of custom ...

  8. stata F值缺失_计量经济学stata代码总结

    答主本来想水掉这次总结,但是身为ikun,就应该像坤坤一样言既出行必果,不能砸了ikun的招牌,接下来我们就开始吧. 数据的读取与查看 读取数据集:use 路径(.dta) 读取Stata系统中的数据 ...

  9. 均值定理最大值最小值公式_如何理解中值定理?三大微分中值定理的几何意义及其证明介绍。...

    本文是为了下篇文章<三大微分中值定理的应用-经典例题>作基础准备 本文参考谢惠民<数学分析习题课讲义>和裴礼文<数学分析中的典型问题与方法>中的内容.已看过的同学可 ...

最新文章

  1. Code Valley团队拟在澳洲建立一座价值5000万美元的BCH科技园
  2. 绝对定位元素的百分比margin
  3. 编写业务层和持久层事务控制代码并配置spring的ioc
  4. 算法设计与分析——回溯法——旅行售货员问题
  5. OpenJudge NOI 1.8 22:神奇的幻方
  6. ionic云开发系列一
  7. Python 16进制与字符串的转换
  8. 导致集群重启_园区网核心交换机S7706异常重启导致无线网络故障
  9. 获取Android Studio的Sha1
  10. php表格行数怎么设置,表格怎么排版
  11. android 图片编辑工具,照片编辑器:Photo Editor
  12. 我裂了,换领导后,竟然每天都要写日报
  13. Linux: ubuntu Appium连接手机
  14. C# WinForm 使用SMTP协议发送QQ邮箱验证码
  15. 区块链亲民应用场景大猜想 第一次或将献给超大文件传输
  16. RALL原则和unique_ptr
  17. c语言有效的预处理命令,9、C语言之预处理命令(示例代码)
  18. 基于matlab计算aom衍射效率,傅里叶望远镜大气湍流模拟实验
  19. 论文毕业设计答辩总结
  20. Leetcode第314场周赛

热门文章

  1. MATLAB | solve函数求解析解时不支持分段函数的解决方案
  2. RuntimeError: mat1 and mat2 shapes cannot be multiplied (1024x1 and 1024x3)
  3. RS-232实现双机通信
  4. 黑盒测试方法-----状态转换图
  5. (3)odroid xu4/3 SD卡的ubuntu系统烧入
  6. 深入理解tensorflow架构设计与实现原理(彭靖田著)
  7. 小学计算机社团活动安排,小学计算机社团活动计划
  8. 其他——dhtmlxGantt甘特图API精华总结
  9. Java final String类的详细用法还有特性说明,自己也在学习.
  10. 《击掌为盟》读后感1742字