专栏名称: 爬虫俱乐部
Stata技术控,编程技术咨询,数据讨论与分享,编程和实证培训。
目录
相关文章推荐
小众软件  ·  另外两件事[250224] ·  8 小时前  
小众软件  ·  阿里/百度/115 全打通,万能视频播放器 ... ·  8 小时前  
APPSO  ·  一文看懂 DeepSeek 刚刚开源的 ... ·  12 小时前  
小众软件  ·  另外两件事[250222] ·  2 天前  
51好读  ›  专栏  ›  爬虫俱乐部

让do文件更直观易懂的两个小方法

爬虫俱乐部  · 公众号  ·  · 2017-10-23 15:34

正文

有问题,不要怕!点击推文底部“ 阅读原文 ”下载爬虫俱乐部用户问题登记表并按要求填写后发送至邮箱 [email protected] ,我们会及时为您解答哟~

有过编程经验的码农们都知道,在编写程序时,我们会尽量使程序更直观易懂,更具可读性,在这里小编就给大家介绍两个好用的小方法-- 注释 换行分割 注意:这两种方法只能在do文件或者ado文件中使用,并不能直接在stata的command中使用,否则会报错 )。

注释在编写do文件时是非常重要的,它虽然不直接参与程序的运行,但可以帮助你规划接下来要做的事,并且无论你在什么时候回顾这段程序,只要查看注释就能快速回忆。一个好的注释必须简单明了,关键的几个词语就能描述你想要做的事情。我们在适当的位置进行注释不仅可以方便自己,还可以清晰地把程序的大体框架展示给大家。

注释三部曲

1

*

这是我们常用的注释方法之一,通常我们将注释内容放在 * 后边来注释整个程序的框架,你也可以通过在注释内容的后边加上对称的 * 达到更加美观的效果。

2

//

这是我们最常用的注释方法,将注释内容放在 // 后边即可,当然它可以起到跟“ * ”一样的作用,也可以在某一行程序后面注释,但是不能将长注释分成多行显示。

值得注意的是,如果要在程序的后面加上注释,那么“ // ”与程序之间必须用一个空格来分隔开,否则stata会报错:

3


/* */

我们可以将注释的内容放在 /*  */ 这两个分隔符中间,它可以对某一行进行注释,也可以同时将长注释分成多行显示,甚至它还可以放在程序中进行注释。

分割三剑客

介绍完注释之后,大家的do文件在框架上是不是清晰了不少?可是较真的小编又发现了一点小问题,当一条程序特别长的时候,如果将它写到一行,不仅麻烦而且也不好看,在这种情况下就需要进行换行分割啦。

举个例子,如果我们要画出国产车和进口车行驶里程与车重之间的关系,如果将其命令写到一行,即:

tw(scatter mpg weight if foreign==0)(scatter mpg weight if foreign==1),title(行驶历程与车重关系)ytitle(里程)legend(label(1 国产车)label(2 进口车))

很明显这条命令实在是太长了,看着也特别不方便,需要借助滑块才能完整地查看,所以小编给大家介绍几个分割长程序的方法。

1

#delimit;  delimit cr

#delimit ;  这条命令表示将默认设置的回车分隔符(cr)改变为分号(“;”) ,在这种情况下,回车后分割开来的多条命令依旧是一条完整的命令,只有在程序的结尾加上“;”,stata才会认为这条程序已编写完毕。

delimit cr 表示的是恢复到原来的默认模式

上述画图命令可以被改写为:

#delimit ;

tw(scatter mpg weight if foreign==0)

(scatter mpg weight if foreign==1),

title(行驶历程与车重关系)ytitle(里程)

legend(label(1 国产车)label(2 进口车));

#delimit cr

2


/* */

/* 放在你想要分隔部分的结尾,回车之后,并将 */ 放在后一部分程序的开头,这样可以使回车符的作用失效,从而达到分割长程序的目的。

tw(scatter mpg weight if foreign==0) /*

*/(scatter mpg weight if foreign==1), /*

*/title(行驶历程与车重关系)ytitle(里程) /*

*/legend(label(1 国产车)label(2 进口车))

3


///

最后这种方法最简单实用,也是我们在编写程序时最常用到的:

tw(scatter mpg weight if foreign==0) ///

(scatter mpg weight if foreign==1), ///

title(行驶历程与车重关系)ytitle(里程) ///

legend(label(1 国产车)label(2 进口车))

看不懂的记得戳下方视频哦~


注:此推文中的图片及封面(除操作部分的)均来源于网络!如有雷同纯属巧合!

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

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

文字编辑:王   明

技术总编:刘贝贝



往期推文推荐:

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

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

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

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

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

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

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







请到「今天看啥」查看全文