分类统计哪家强,table命令来帮忙

2017-05-11 王清 爬虫俱乐部 爬虫俱乐部

前几天在我们的stata编程学习群中,有一位老师,也是之前参加我们stata培训的学员提了一个问题,问题是想看一下某数据中每年每个行业大概有多少公司分布,但是运行程序之后却出现了如下错误并且不知道报错原因:


其实这也是我们平时经常会遇到的一个问题,自己敲的代码说报错就报错,还不知道错在哪里,遇到这种问题我们该怎么办呢,模拟一个数据去测试呀!


那针对上面出错的这个问题,我们也是模拟了一个数据来测试的:

clear

set obs 1000

 

gen id = mod(_n,200)+1

bysort id: gen year = 2010+_n

drop if uniform()<.1

 

**17 industries

bysort id: gen int ind = uniform()*17  if _n==1

replace ind = ind[_n-1] if ind==.

table year, c(n ind)


在模拟完数据并测试后,我们发现代码是没有问题的!仔细检查报错的代码原来是变量名称写错了。



在上面程序中我们用到了一个table命令,这个命令是用来进行一些简单的描述性统计的。它的命令格式为:


其中我们常用的格式为: table rowvar, c(clist),其中rowvar是分类变量,c((clist)是要进行描述的内容。比如上面列子中table year, c(n ind)就是列出不同年份(year)上每个行业(ind)有多少个样本量,我们常用这个命令生成一维和二维列表。


以stata自带的auto数据为例:

1
生成一维列表

首先是最简单的一维列表,不加 c(clist)选项的情况下,就生成的是频数分布。

sysuse auto,clear

table rep78


生成在不同rep78水平下,mpg的样本量、均值、标准差、中位数分布表,并且可以规定数据的显示格式

table rep78, c(n mpg mean mpg sd mpg median mpg) format(%9.2f)


2
生成二维列表

生成最简单的二维表

table rep78 foreign


生成foreign和rep78的二维列表,列表内容为mpg的均值,其中format选项规定了数据的显示格式,center表示数据在表格中是居中对齐的,row和col分别表示在表格中加一行和一列合计行(total)

table foreign rep78, c(mean mpg) format(%9.2f) center row col

以上就是今天给大家分享的内容了,说得好就赏个铜板呗!有钱的捧个钱场,有人的捧个人场~。

应广大粉丝要求,爬虫俱乐部的推文公众号打赏功能可以开发票啦,累计打赏超过1000元我们即可给您开具发票,发票类别为“咨询费”。用心做事,只为做您更贴心的小爬虫。第一批发票已经寄到各位小主的手中,大家快来给小爬虫打赏呀~

                      文字编辑:强宇曦

技术总编:刘贝贝



往期推文推荐:

1.中国高校财经、管理与综合类期刊灌水排行榜

2.关于RTF你不知道的命令

3.关于RTF你不知道的命令之番外篇

4.免费事件研究,一片片从邮局寄来

5.免费的股价同步性,一片片从邮局寄来

6.Stata叫你回家听音乐了!

7.一言不合就用stata写邮件(Outlook/Foxmail)

8.听说你想知道怎么用stata画地图?

9.I have a Stata, I have a python

10.I have a Stata, I have a Python之二——pdf转word




关于我们

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

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

投稿邮箱:statatraining@163.com

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

欢迎关注爬虫俱乐部

微信扫一扫
关注该公众号