楼主: lgh°
15014 29

[数据管理求助] stata操作出现invalid syntax r(197) [推广有奖]

  • 3关注
  • 0粉丝

硕士生

3%

还不是VIP/贵宾

-

威望
0
论坛币
1522 个
通用积分
2.9290
学术水平
1 点
热心指数
2 点
信用等级
1 点
经验
5162 点
帖子
53
精华
0
在线时间
186 小时
注册时间
2016-2-4
最后登录
2024-4-22

20论坛币
针对连玉君老师给出的《融资约束、不确定性与上市公司投资效率》一文的stata代码,我在重新执行的过程中遇到了问题,在执行xtbalance, range(2001 2006)过程中提示invalid syntax,我反复检查了语法问题,看了help xtbalance,没发现有语法错误,请问如何解决呢?

QQ图片20161109162907.png (15.34 KB)

QQ图片20161109162907.png

最佳答案

蓝色 查看完整内容

数据和命令没有问题 只能是你自己电脑那里问题 1、重新安装stata软件 2、把stata软件升级到最新状态 3、下载安装xtbalance
关键词:invalid SYNTAX Stata Valid tata 上市公司 invalid
沙发
蓝色 发表于 2016-11-9 16:29:57 |只看作者 |坛友微信交流群
lgh° 发表于 2016-11-14 10:28
能帮我看看是什么问题吗
数据和命令没有问题
只能是你自己电脑那里问题

1、重新安装stata软件
2、把stata软件升级到最新状态
3、下载安装xtbalance

使用道具

藤椅
lgh° 发表于 2016-11-9 22:18:38 |只看作者 |坛友微信交流群
为什么按照连老师说的重新安装xtbalance命令还是不行呢?

使用道具

板凳
austen06 发表于 2016-11-11 08:11:28 |只看作者 |坛友微信交流群
"You must tsset your data before using xtbalance; see help tsset."

使用道具

报纸
lgh° 发表于 2016-11-11 15:58:26 |只看作者 |坛友微信交流群
austen06 发表于 2016-11-11 08:11
"You must tsset your data before using xtbalance; see help tsset."
但是我已经进行了tsset了

使用道具

地板
蓝色 发表于 2016-11-11 18:30:41 |只看作者 |坛友微信交流群
提供数据在讨论

使用道具

7
austen06 发表于 2016-11-12 04:08:21 |只看作者 |坛友微信交流群
lgh° 发表于 2016-11-11 15:58
但是我已经进行了tsset了
你的dofile里是什么东西?

使用道具

8
lgh° 发表于 2016-11-12 09:38:01 |只看作者 |坛友微信交流群
蓝色 发表于 2016-11-11 18:30
提供数据在讨论
use SFA_data.dta, clear
   tsset id year
   xtdes

*-剔除金融类企业
   panels id if isfinan==1
   drop if isfinan==1

*-剔除 ST-PT 公司
   panels id if (v370st!="")
   drop  if (v370st~="")

*-保留 2000-01-01 以前上市且仅发行A股的公司1998年以后的数据
   drop if (id>200000 & id<300000) | id>900000
   drop if pyear>2000
   drop if  year<2000


*============
* 指标构建
*============

*-主要财务指标
   gen tl   = a200000/a100000
   gen invt = d220101/L.a130127
   gen CFlow= d100000/L.a130127
   gen size = ln(a100000)
   gen stfn = a310101 + a310301  // 股权融资 = 股本 + 资本公积金
   gen dbfn = a200000            // 债务融资 = 总负债
   gen EQUI = D.stfn/L.a100000
   gen DEBT = D.dbfn/L.a100000
   gen sgr  = D.b110101/L.b110101
   gen tagr = D.a100000/L.a100000
   gen cash = (d630101+d630301)/a100000 // 现金及现金等价物期末余额/总资产
   
*-Tobin Q
   gen aps = a300000/totalshr   // 每股净资产 = 股东权益合计/总股本
   gen mv = tshr*p_av_dec+(totalshr-tshr)*aps + a200000  // 股东权益市值+负债合计
   gen tobin = mv/a100000

*-对数转换  
   gen ln_invt = ln(invt)
   gen ln_tobin= ln(tobin)

*-变量标签  
   label var invt    投资支出率
   label var CFlow   现金流量
   label var size    公司规模
   label var sgr     主营业务收入成长率
   label var tagr    总资产成长率
   label var EQUI    股权融资增加额对数值
   label var DEBT    债务融资增加额对数值
   label var cash    现金持有比率
   
*===============
* 再次样本筛选
*===============

*-去除缺漏值
   egen miss = rmiss(ln_invt ln_tobin EQUI DEBT size CFlow)
   drop if miss != 0

*-删除负债率>100%,总资产成长率或销售额成长率大于200%的公司
   drop if (tl>1 | sgr>2 | tagr>2)

*-转换为平行面板
   ssc install xtbalance, replace   
   xtbalance, rang(2001 2006)

使用道具

9
lgh° 发表于 2016-11-12 09:38:49 |只看作者 |坛友微信交流群
austen06 发表于 2016-11-12 04:08
你的dofile里是什么东西?
use SFA_data.dta, clear
   tsset id year
   xtdes

*-剔除金融类企业
   panels id if isfinan==1
   drop if isfinan==1

*-剔除 ST-PT 公司
   panels id if (v370st!="")
   drop  if (v370st~="")

*-保留 2000-01-01 以前上市且仅发行A股的公司1998年以后的数据
   drop if (id>200000 & id<300000) | id>900000
   drop if pyear>2000
   drop if  year<2000


*============
* 指标构建
*============

*-主要财务指标
   gen tl   = a200000/a100000
   gen invt = d220101/L.a130127
   gen CFlow= d100000/L.a130127
   gen size = ln(a100000)
   gen stfn = a310101 + a310301  // 股权融资 = 股本 + 资本公积金
   gen dbfn = a200000            // 债务融资 = 总负债
   gen EQUI = D.stfn/L.a100000
   gen DEBT = D.dbfn/L.a100000
   gen sgr  = D.b110101/L.b110101
   gen tagr = D.a100000/L.a100000
   gen cash = (d630101+d630301)/a100000 // 现金及现金等价物期末余额/总资产
   
*-Tobin Q
   gen aps = a300000/totalshr   // 每股净资产 = 股东权益合计/总股本
   gen mv = tshr*p_av_dec+(totalshr-tshr)*aps + a200000  // 股东权益市值+负债合计
   gen tobin = mv/a100000

*-对数转换  
   gen ln_invt = ln(invt)
   gen ln_tobin= ln(tobin)

*-变量标签  
   label var invt    投资支出率
   label var CFlow   现金流量
   label var size    公司规模
   label var sgr     主营业务收入成长率
   label var tagr    总资产成长率
   label var EQUI    股权融资增加额对数值
   label var DEBT    债务融资增加额对数值
   label var cash    现金持有比率
   
*===============
* 再次样本筛选
*===============

*-去除缺漏值
   egen miss = rmiss(ln_invt ln_tobin EQUI DEBT size CFlow)
   drop if miss != 0

*-删除负债率>100%,总资产成长率或销售额成长率大于200%的公司
   drop if (tl>1 | sgr>2 | tagr>2)

*-转换为平行面板
   ssc install xtbalance, replace   
   xtbalance, range(2001 2006)

使用道具

10
lgh° 发表于 2016-11-12 09:48:14 |只看作者 |坛友微信交流群
蓝色 发表于 2016-11-11 18:30
提供数据在讨论
数据文件 SFA_data.dta (2.19 MB)

使用道具

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

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

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

GMT+8, 2024-4-25 16:37