putexcel——stata返回值运用

2017-08-18 河南大学 赵政轩 爬虫俱乐部 爬虫俱乐部


大大大大大新闻————自公众号推送视频讲解环节以来,深受广大读者朋友的喜爱。近日向我们提问的粉丝也是大幅增加呐!为了便捷管理相关信息,提高工作效率,我们对提问方式做了略微调整哟~提问者需点击推文底部“阅读原文”下载爬虫俱乐部用户问题登记表并按要求填写后发送至邮箱statatraining@163.com,我们会及时为您解答哟~

上一篇推文我给大家介绍了如何将矩阵中的元素输出到excel表格中,今天接着为大家介绍如何使用putexcel将命令执行后的返回值输出到excel

putexcel的语法如下:

putexcel ul_cell = returnset [, export_options]

其中,ul_cell用来设定输出的表格在Excel中的起始位置;returnset 用来指定输出某类返回值的内容和名称,具体见下图。

图中包含两类返回值:

(1)e-class—估计命令的返回值:

escalars、escalarnames,标量的内容和名称

emacros、emacronames,宏的内容和名称

ematrices、ematrixnames,矩阵的内容和名称

e*、enames,所有的e-class返回值和名称

(2)r-class一般命令的返回值:

rscalars、rscalarnames,标量的内容和名称

rmacros、rmacronames,宏的内容和名称

rmatrices、rmatrixnames,矩阵的内容和名称

r*、rnames,所有的r-class返回值和名称

(3)export_options

colwise,返回值的结果和名称排列成一行,默认排列成一列

colnames,保留矩阵列名称

rownames,保留矩阵行名称

names,保留矩阵行和列的名称


以auto数据为例,假定我们想要按照rep78的类别分别对mpg进行统计描述,并通过putexcel命令将其返回值输出到Excel表格中。

[Step 1: 特例]  rep78等于1

clear

set more off

use auto

putexcel set sum,replace

sum mpg if rep78 == 1,detail

return list

       接着,我们把命令执行时返回的标量输出到Excel中,并通过添加colwise选项让标量的内容和名称横向排列。

putexcel D3 = rscalars D2 = rscalarnames C3 = 1 C2 = rep78,colwise //rscalars声明需要输出的是rscalars的内容,rscalarnames则声明需要输出的为rscalars的名称

import excel using sum.xlsx,describe

Excel表格里的内容:

接着,我们对表格进行美化:

putexcel C1:V1 C3:V3, border(bottom)  //对第一行和最后一行添加下边框

putexcel C1:V1,merge  //合并居中

putexcel C1="Summary statistics of mpg",hcenter vcenter bold font(Arial,15,black)   //添加表头,hcenter(水平居中)、vcenter(垂直居中)、bold(加粗)、font字体,大小,颜色)

       结果如下

[Step 2: 循环] 对rep78的不同取值进行循环

接下来我们使用循环,按照rep78的不同取值对mpg进行统计,并将其返回值输出至Excel中。

putexcel set sum,replace

levelsof rep78,local(type)  //把rep78所有种类存入名为type的局部宏里

local col = 3 //前两行是表头和变量名,我们从第三行开始

foreach byvar in `type’ {

    sum mpg if rep78 == `byvar’,detail

    putexcel D`col' = rscalars C`col' = `byvar',colwise

    local col = `col' + 1

}

putexcel C2="rep78" D2=rscalarnames,colwise      

import excel using sum.xlsx,describe

putexcel C1:V1 C7:V7,border(bottom)

putexcel C1:V1,merge 

putexcel C1 = “Summary statistics of mpg”,hcenter vcenter bold font(Arial,15,black)

putexcel C2:C7,left

putexcel D2:V7,hcenter vcenter

       其余列居中

       结果如下所示:

以下是完整命令:

putexcel set sum,replace

levelsof rep78,local(type) 

local col = 3

foreach byvar in `type' {

       sum mpg if rep78 == `byvar',detail

       putexcel D`col'=rscalars C`col' =`byvar',colwise

       local col = `col' + 1

}

putexcel C2 = "rep78" D2 = rscalarnames,colwise

import excel using sum.xlsx,describe

putexcel C1:V1 C7:V7,border(bottom)

putexcel C1:V1,merge

putexcel C1 = " Summary statistics of mpg ",hcenter vcenter bold     font(Arial,15,black)

putexcel C2:C7,left

putexcel D2:V7,hcenter vcenter

shellout sum.xlsx

       今天的推文就介绍到这,谢谢大家。如果还有什么疑问,大家可以在公共号下面留言,爬虫君会为你耐心解答哦。

什么?!没看懂!!不要紧!!戳下面,听爬虫小将的详细讲解,也欢迎大家的批评指正哟!


以上就是今天给大家分享的内容了,说得好就赏个铜板呗!有钱的捧个钱场,有人的捧个人场~。另外,我们开通了苹果手机打赏通道,只要扫描下方的二维码,就可以打赏啦!

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

                        文字编辑:徐露露

技术总编:刘贝贝



往期推文推荐:

1.高校学术大神:你的导师上榜了吗?

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

3.命令sum2docx输出统计量表到docx文件

4.reg2docx报告你的实证结果吧!

5.爬虫俱乐部又出新命令了——wordconvert转换你的word文件

6.putdocx+wordconvert—将实证结果输出到Word.docx)文档

7.Stata 15Markdown——没有做不到,只有想不到!

8.矩阵和宏的故事

9.shelloutopen anything

10.Putpdf--神奇的转换工具



关于我们

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

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

投稿邮箱:statatraining@163.com

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

欢迎关注爬虫俱乐部






微信扫一扫
关注该公众号