楼主: lhqspringlet
3617 9

[其他] [请教]stata的一个操作问题 [推广有奖]

  • 6关注
  • 2粉丝

已卖:1242份资源

副教授

30%

还不是VIP/贵宾

-

威望
0
论坛币
4848 个
通用积分
18.6040
学术水平
8 点
热心指数
10 点
信用等级
8 点
经验
7517 点
帖子
221
精华
0
在线时间
1331 小时
注册时间
2007-3-11
最后登录
2025-11-30

楼主
lhqspringlet 发表于 2009-12-4 11:51:54 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
请教各位一个问题,如何把已经使用了correlate命令后所生成的相关系数的值保存起来,生成另外的一列有关两个变量相关系数的数据?
当然最笨的方法是把数据复制到exl当中,可过程太繁琐了。用stata命令如何实现呢?
二维码

扫码加我 拉你入群

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

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

关键词:Stata tata correlate stata命令 相关系数 如何

回帖推荐

sungmoo 发表于9楼  查看完整内容

*暂时先用这个方法 g c12=. bys id: egen c=sum(x1

sungmoo 发表于5楼  查看完整内容

*对于每个id,都求出x1与x2的相关系数,生成变量c12 g c12=. levelsof id,l(a) foreach i in `a' { corr x1 x2 if id==`i' replace c12=r(rho) if id==`i' }

沙发
sungmoo 发表于 2009-12-4 12:38:56
最好举一个具体的例子,说明你想要的结果是什么。

藤椅
lhqspringlet 发表于 2009-12-4 12:54:45
比如说,我用30年的面板数据,然后我想要把x1,x2之间的相关程度作为一个变量纳入分析当中,计算过程当中分别算出每个个体的一个相关系数,然后想把它保存下来作为面板当中的一列数据。
由于个体相对多,处理太麻烦了。用exl处理实在过于繁琐。

板凳
lhqspringlet 发表于 2009-12-4 12:59:02
2# sungmoo
比如说,我用30年的面板数据,然后我想要把x1,x2之间的相关程度作为一个变量纳入分析当中,计算过程当中分别算出每个个体的一个相关系数,然后想把它保存下来作为面板当中的一列数据。
由于个体相对多,处理太麻烦了。用exl处理实在过于繁琐。

报纸
sungmoo 发表于 2009-12-4 13:43:58
lhqspringlet 发表于 2009-12-4 12:59 比如说,我用30年的面板数据,然后我想要把x1,x2之间的相关程度作为一个变量纳入分析当中,计算过程当中分别算出每个个体的一个相关系数,然后想把它保存下来作为面板当中的一列数据。由于个体相对多,处理太麻烦了。用exl处理实在过于繁琐。
*对于每个id,都求出x1与x2的相关系数,生成变量c12

g c12=.
levelsof id,l(a)
foreach i in `a' {
corr x1 x2 if id==`i'
replace c12=r(rho) if id==`i'
}

地板
lhqspringlet 发表于 2009-12-4 14:35:06
5# sungmoo
版主你好厉害。有了这一程序之后省却了不少时间。
不过,运行过程当中,我发现由于的的样本是非平衡的面板数据。有些计算过程当中的样本量不够,对于每个个体只有一二年的数据时,出现了“insufficient observations”这一情形,然后算了一半左右的系数就停止了,后面没算下去了,怎么避免这一情形呢?

7
sungmoo 发表于 2009-12-4 15:00:22
lhqspringlet 发表于 2009-12-4 14:35 有些计算过程当中的样本量不够,对于每个个体只有一二年的数据时,出现了“insufficient observations”这一情形,然后算了一半左右的系数就停止了,后面没算下去了,怎么避免这一情形呢?
样本量至少要多少才能运算?

8
lhqspringlet 发表于 2009-12-4 15:21:12
7# sungmoo
样本量至少要五个才行。

9
sungmoo 发表于 2009-12-4 16:11:01
*暂时先用这个方法
g c12=.
bys id: egen c=sum(x1<.&x2<.)
levelsof id if c>4,l(a)
foreach i of loc a {
corr x1 x2 if id==`i'
replace c12=r(rho) if id==`i'
}

10
lhqspringlet 发表于 2009-12-4 16:39:42
9# sungmoo
版主stata编程实在厉害!真是高手!郁闷好长时间的问题没想到一下子竟给版主简单的几行命令轻松地解决,感激涕零!
得多谢版主你学习学习。-:)

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-2 07:51