有问题,不要怕!点击推文底部“阅读原文”下载爬虫俱乐部用户问题登记表并按要求填写后发送至邮箱statatraining@163.com,我们会及时为您解答哟~
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元我们即可给您开具发票,发票类别为“咨询费”。用心做事,只为做您更贴心的小爬虫。第一批发票已经寄到各位小主的手中,大家快来给小爬虫打赏呀~
文字编辑/王 悦
技术总编/刘贝贝
往期推文推荐:
5.爬虫俱乐部又出新命令了——wordconvert转换你的word文件
6.putdocx+wordconvert—将实证结果输出到Word(.docx)文档
关于我们
微信公众号“爬虫俱乐部”分享实用的stata命令,欢迎转载、打赏。爬虫俱乐部是由李春涛教授领导下的研究生及本科生组成的大数据分析和数据挖掘团队。
此外,欢迎大家踊跃投稿,介绍一些关于stata的数据处理和分析技巧。
投稿邮箱:statatraining@163.com
投稿要求:
1)必须原创,禁止抄袭;
2)必须准确,详细,有例子,有截图;
注意事项:
1)所有投稿都会经过本公众号运营团队成员的审核,审核通过才可录用,一经录用,会在该推文里为作者署名,并有赏金分成。
2)邮件请注明投稿,邮件名称为“投稿”+“推文名称”。
3)应广大读者要求,现开通有偿问答服务,如果大家遇到关于stata分析数据的问题,可以在公众号中提出,只需支付少量赏金,我们会在后期的推文里给予解答。
欢迎关注爬虫俱乐部
微信扫一扫
关注该公众号