专栏名称: 爬虫俱乐部
Stata技术控,编程技术咨询,数据讨论与分享,编程和实证培训。
目录
相关文章推荐
苍梧晚报  ·  降温+雨雪,气象部门最新发布! ·  3 天前  
度房苏州  ·  马上,苏州家装补贴即将重启! ·  6 天前  
51好读  ›  专栏  ›  爬虫俱乐部

听说你也想知道函数st_view()的用法

爬虫俱乐部  · 公众号  ·  · 2017-12-14 11:03

正文

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

ps:(1)爬虫俱乐部将于2018年1月20日至28日在武汉举行两期Stata编程技术定制培训。详情请戳 《爬虫俱乐部Stata编程技术定制培训班——2018年1月武汉专场》

(2)喜大普奔~爬虫俱乐部的github主站正式上线了!我们的网站地址是: https://stata-club.github.io ,粉丝们可以通过该网站访问过去的推文哟~

诸君安!之前的推文中,我们介绍了提取Stata当前内存变量的Mata函数st_data()(见往期推文《 听说你想知道st_data()函数的用法 》)。今天,我们继续介绍具有相同用法的 st_view() 函数。

一、st_view()函数的介绍

打开 st_view() 函数的help文件,总结 st_view() 函数的语法结构如下:

矩阵变量类型

语法结构

数值

st_view( V, real matrix i, real matrix j)

st_view ( V, real matrix i, real matrix j,scalar selectvar)

字符

st_sview ( V, string matrix i,string matrix j)

st_sview( V, string matrix i,string matrix j,scalar selectvar)

可以看到,函数 st_view() 可以用来提取Stata 当前内存的数值型变量,st_sview()用来提取Stata 当前内存的字符型变量,其中:i表示新生成的矩阵行数(第几行),j表示新生成的矩阵列数(第几列),selectvar表示一个标量,这里有3种类型的表示方法:

(1)如果selectvar为具体的某一个变量或者是变量的序号(即第几个变量),则表示提取该变量下的非零观测值(含缺失值)。

(2)如果selectvar是0,则表示返回所选变量中非缺失的观测值。

(3)如果selectvar是“.”或者“ ”,则与不加选项selectvar是一样的效果。

举例子:

sysuse auto,clear

keep in 1/10

tab rep78, generate(r) //生成变量rep78的虚拟变量

进入mata语言环境,先提取数值型变量:

mata

B1=B2=B3=B4=B5=B6=B7=B8=B9=B10=. //定义10个空矩阵

st_view(B1, .,.) //定义矩阵B1为所有变量的所有观测值

B1

st_view(B2, .,2) //定义矩阵B2为第二个变量的所有观测值

B2

st_view(B3, .,("price","mpg","weight","rep78"),0) //定义矩阵B3为变量price、mpg、weight和rep78的所有非缺失的观测值

B3

st_view(B4, .,("price","mpg","weight","rep78"),"r1") //定义矩阵B4为虚拟变量r1取值非0(含缺失值)时,变量price、mpg、weight和rep78的观测值

B4

st_view(B5, .,("price","mpg","weight","rep78"),14) //定义矩阵B5为序号是14的变量取值非0(含缺失值)时,变量price、mpg、weight和rep78的观测值

B5

end

部分结果如下:

接着,用函数 st_sview() 提取字符型变量:

mata

st_sview(B6, .,1) //定义矩阵B6为第一个变量的所有观测值

B6

st_sview(B7, .,"make","r1") //定义矩阵B7为虚拟变量r1取值取值非0(含缺失值)时,对应变量make的观测值

B7

end

部分结果如下:

二、st_subview()函数

st_subview()函数可以从 st_view() 函数定义的矩阵中提取子矩阵。举例如下:

mata

st_subview(B8,B3, .,2) //定义矩阵B8为矩阵B3中第二个变量的所有观测值

B8

st_subview(B9,B3, (2::4),(2,4)) //定义矩阵B9为矩阵B3中第二、四个变量的第2-4行观测值

B9

st_subview(B10,B3, (1\3),(2,4)) //定义矩阵B10是提取矩阵B3中第二、四个变量的第1个和第3个观测值

B10

end

部分结果如下所示:

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

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

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

文字编辑/王   悦

技术总编/刘贝贝


往期推文推荐:

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

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

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

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

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

6.







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