楼主: fei355
40009 111

[学习心得] 一个生成经济加权的命令和操作   [推广有奖]

学科带头人

29%

还不是VIP/贵宾

-

威望
0
论坛币
20592 个
通用积分
835.8928
学术水平
94 点
热心指数
91 点
信用等级
77 点
经验
23941 点
帖子
2990
精华
1
在线时间
896 小时
注册时间
2008-12-4
最后登录
2024-4-22

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
本人前期在论坛上发表了一个帖子“用stata生成空间权重的步骤和操作详解”(https://bbs.pinggu.org/forum.php? ... 8556&from^^uid=805165),受到了各位同行的鼓励,当时只是一个入门级操作,对于高级点的操作,现在略有进展,现在公开以和大家共同学习探讨!
       空间计量的一个关键之处在于空间权重的选择和设置问题:现在文献中提到的0-1二值空间权重,距离衰减法(两地距离的倒数)空间权重,经济距离空间权重 ,逆经济距离空间权重 ,社交网络空间权重 ,社会经济空间权重。在我们的实际应用中,理论都很简单明了,在matlab中可能很好实现,但是本人一直使用stata,因此需要找到在stata中生成上述空间权重的方法。二值空间权重和距离权重都比较容易比如spweight(截面的)、spweightxt(面板和截面)spmat(创建和管理空间权重对象(主要是spmat权重对象,在一些命令中会用到比如xsmle)),但是这些命令在经济距离、社会距离和经济社会距离方面无能无力,这时spwmatrix的命令可能更为有效,他是上述命令的综合体。下面主要介绍一下如何使用该命令:
1.命令结构和格式
(1)从ArcGIS (SWM file)、 GeoDa (GAL file)或txt空间权重文件中调入初始权重文件
    spwmatrix import using filename, wname(wght_name)  [dta text swm(idvar_name)      Other_options]
    Other Options       xtw(#)          generate spatial weights to be used with  a balanced panel dataset(生成平衡面板空间权重)      mataf              save the spatial weights matrix and/or  its eigenvalues to Mata file(s)      external           make the spatial weights reside in Mata memory(使生成的空间权重保留在Mata 中)      eignval(eignv_name)      place the eigenvalues of the spatial weights matrix into a column vector      eignvar(newvar2)       generate a variable to hold the eigenvalues of the spatial weights   matrix      noisland                        remove observations with no neighbors  when generating the spatial weights      rowstand                        row-standardize the spatial weights matrix      connect                         display connectivity information about the spatial weights matrix      xport(wght_filename, filetype) export the spatial weights matrix to a  .dat, .txt, or a .gwt file  where filetype=dat|txt|gwt      replace                         overwrite existing newvar1, newvar2, and wght_filename as well as wght_name and   eignv_name if mataf specified      favor(speed|space)              favor speed or space其中 filename是指ArcGIS (SWM file)、 GeoDa (GAL file)或txt空间权重文件名,是提前生成好的,建议采用GeoDa生成GAL file文件,wght_name是需要你指定新生成空间权重的名称。下面给出一个例子:

    spwmatrix import using C:\data\wcontig.gal, wname(wcontig) rowstand  xport(wcontig.dta)如果wcontig.gal在stata的指定目录当中,则只需填上wcontig.gal就可以了。
(2)生成距离和经济距离加权的空间权重(非常重要)

spwmatrix gecon varlist [if] [in], wname(wght_name)  [wtype(bin|inv|econ|invecon) cart r(#) dband(numlist)  alpha(#) knn(#) econvar(varname1) beta(#) Other_options]
加黑部分必须填上,其中varlist主要是指在stata数据表中纬度和经度变量名称一般都是命名为: latitude  longitude;wname(wght_name)  需要指定新生成空间权重的名称,wtype(bin|inv|econ|invecon)表示生成空间权重类型,如果不填,默认是二值型空间权重,这里主要说经济加权空间权重econ|invecon。 cart 表示纬度和经度采用笛卡尔坐标,这是默认选项;如果采用球面坐标则只能选择 r(#),此时不能同时选择 cart,并且需要指定地球半径距离,一般默认填写r(6371.009);dband(numlist)表示边界,其中的numlist表示确定边界的变量,一般是各省份名称;alpha(#) 表示参数限制范围,默认为alpha(1) ;knn(#)表示调用最近邻空间权重;econvar(varname1)是生成经济加权空间权重很关键的选项,表示拟采用哪种经济指标作为权重来计算空间权重,一般有经济总量比如GDP、工业增加值、营业收入、劳动报酬总额等,该变量必须与经度和纬度变量同时存在于stata数据表中,以方面调用。这里讲一下经济距离的原理:传统距离空间权重只是考虑了距离,忽略了相邻省份经济规模的影响,一般认为经济越发达地区对落后地区的影响就越大,因此需要用邻省经济规模作为权重调整单一距离,公式如下:
Wij        =        [1/|econvar_i -econvar_j +1|] *exp(-β*D_ij)  
其中 D_ij是i地与j地之间的距离,econvar_i是指i地区经济规模指标比如GDP占全部地区GDP的比重,其中分子取绝对数形式,D_ij表示两地距离,一般根据纬度和经度距离计算。

2.一个例子:

spwmatrix gecon latitude longitude, wn(wecon) wtype(econ)    econvar(employment) rowstand

以就业人数作为权重求出空间距离权重,其中 latitude longitude 分别是纬度和经度变量名称,rowstand  是行标准化。
如果计算出了经济权重距离,可以将其输入到一个txt文档或者先查看后复制到txt文档,然后通过spmat命令调入该权重文件生成spmat对象,就可以在xsmle等命令中进行使用了,具体说来:

use spwmatrix.dta,clear
spwmatrix gecon latitude longitude, wn(wecon) wtype(econ)    econvar(employment) rowstand  export(wecon,txt)
mat list wecon  //查看wecon权重矩阵
spmat import wedg usingwecon.txt  //该命令可以生成以wedg为名称的spmat权重文件
spmat savewecon  using wecon.spmat   //该命令可以将生成的spmat权重文件存储为 wecon.spmat
spmat use wedg using wedg.spmat  //该命令可以打开spmat权重文件
然后可以使用空间面板模型比如xsmle

xsmle lngsp lnpcap lnpc lnemp, re model(sdm) wmat(wedg) durbin(lnpcap lnpc)

这是我最近研究的一点心得,其中有很多不足之处,可能写的比较啰嗦,但是为了初学者能够按图索骥,各位大侠多忍耐!对于不足之处多提宝贵意见,以促进空间计量在STATA中的应用!下面是stata给的几个例子,有空多看看!
元旦快到了,提前祝大家元旦快乐!




二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:经济加权 observations connectivity Eigenvalues observation 空间计量 STATE 命令 经济距离加权

已有 16 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
罗润万(|Toby) + 5 + 5 + 5 奖励积极上传好的资料
喵喵小木鱼 + 1 + 1 + 1 精彩帖子
皮皮大侠 + 5 + 5 + 5 热心帮助其他会员
听风走过的流年 + 1 + 1 + 1 精彩帖子
leidenuniv + 5 + 4 + 3 + 2 精彩帖子
葫芦娃大王 + 1 + 1 精彩帖子
左手、微笑向暖 + 1 + 1 + 1 精彩帖子
14622 + 5 + 2 + 2 + 2 好的意见建议
日新少年 + 1 + 1 + 1 精彩帖子
tianxunmeng + 2 精彩帖子

总评分: 经验 + 61  论坛币 + 134  学术水平 + 28  热心指数 + 27  信用等级 + 25   查看全部评分

本帖被以下文库推荐

我就是我!
沙发
PX0706 发表于 2013-12-20 16:55:39 |只看作者 |坛友微信交流群
嗯,写的非常好,详细!

使用道具

藤椅
fei355 发表于 2013-12-20 17:04:13 |只看作者 |坛友微信交流群
PX0706 发表于 2013-12-20 16:55
嗯,写的非常好,详细!
是在你的鼓励下,才有所进步的!再次表示感谢!
我就是我!

使用道具

板凳
PX0706 发表于 2013-12-20 17:06:59 |只看作者 |坛友微信交流群
fei355 发表于 2013-12-20 17:04
是在你的鼓励下,才有所进步的!再次表示感谢!
没有啦,是你自己努力,我有心得后第一个与你交流!

使用道具

报纸
xiaoping2006 发表于 2013-12-21 10:22:32 |只看作者 |坛友微信交流群
楼主,好人啊!谢谢你的无私奉献!

使用道具

请教楼主:使用spwmatrix gecon latitude longitude, wn(wecon) wtype(econ)  cart econvar(gdp) rowstand,出现如下错误
_= invalid name
r(198);
该怎么解决呢?
难得糊涂

使用道具

7
fei355 发表于 2014-1-4 08:17:37 |只看作者 |坛友微信交流群
是程序“spwmatrix”的问题
我就是我!

使用道具

8
kacusi 发表于 2014-1-6 14:40:13 |只看作者 |坛友微信交流群
我也有一樣的問題 請問 程序"spmatrix"的問題 是什麼意思呢?

使用道具

9
fei355 发表于 2014-1-7 08:22:46 |只看作者 |坛友微信交流群
kacusi 发表于 2014-1-6 14:40
我也有一樣的問題 請問 程序"spmatrix"的問題 是什麼意思呢?
spwmatrix改程序若是从SSC 上下载,do文件的程序有部分是错误的!
我就是我!

使用道具

fei355 发表于 2014-1-7 08:22
spwmatrix改程序若是从SSC 上下载,do文件的程序有部分是错误的!
还请楼主说明一下哪里有正确的“spwmatrix”可下载啊,万分感谢!
难得糊涂

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-27 18:35