楼主: jiangxinfeng
5052 11

stata分组数据处理问题求助! [推广有奖]

  • 1关注
  • 11粉丝

已卖:54份资源

学科带头人

13%

还不是VIP/贵宾

-

威望
1
论坛币
1569 个
通用积分
56.4624
学术水平
16 点
热心指数
21 点
信用等级
8 点
经验
111655 点
帖子
961
精华
0
在线时间
2108 小时
注册时间
2009-9-10
最后登录
2025-1-16

楼主
jiangxinfeng 发表于 2012-12-23 14:43:34 |AI写论文
35论坛币
数据中 stkcd为股票代码,accper为年度,h为行业代码。
touzi变量是某个股票当年的投资增加或者减少变量。若投资增加了,取值为1。投资减少了,取值为-1.
现在我想求一个比例。
某年度,某行业内的投资增加或者投资减少的公司数的较大者 与这个年度,这个行业的总公司数的比值。
举个例子
数据中第二行到第十行,是2001年A行业内公司的投资增减情况
2001年A行业共有公司9家,其中取值为1(也就是增加投资)的公司有4家,取值为-1(减少投资)的企业为5家。
二者的较大者为5.
所以我要的结果就是 5/9.

因为我要分年度行业来获得不同行业不同年度的比例。

追加悬赏!!求助啊大神们

QQ截图20121223142333.png (17.56 KB)

QQ截图20121223142333.png

投资.xlsx
下载链接: https://bbs.pinggu.org/a-1239081.html

429.74 KB

最佳答案

LingHu 查看完整内容

bysort accper h touzi: gen num=_N bysort accper h: egen mnum=max(num) bysort accper h: gen ratio=mnum/_N
关键词:stata分组 数据处理问题 Stata 数据处理 tata 股票代码 总公司 行业 数据分析专题 数据处理 数据分析软件 数据分析报告 面板数据分析 excel数据分析 数据分析方法 项目数据分析

沙发
LingHu 发表于 2012-12-23 14:43:35
bysort accper h touzi: gen num=_N
bysort accper h: egen mnum=max(num)
bysort accper h: gen ratio=mnum/_N
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
monstersivle + 1 + 1 + 1 精彩帖子

总评分: 学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

藤椅
jiangxinfeng 发表于 2012-12-23 15:03:25
大神帮忙一下吧

板凳
jiangxinfeng 发表于 2012-12-23 19:39:54
描述的不清楚么。。。

报纸
fgleric 发表于 2012-12-23 22:43:07
gen c=1
bys h touzi: egen n=count(c)
bys h: egen max=max(n)
bys h: gen rate=max/_N

地板
jiangxinfeng 发表于 2012-12-24 20:16:35
fgleric 发表于 2012-12-23 22:43
gen c=1
bys h touzi: egen n=count(c)
bys h: egen max=max(n)
谢谢!我昨天已经手动算了一下,结果出来了,但是算的过程很麻烦。不过,结果跟你的程序跑出来的不同哎。。但是跟楼下跑出来的结果相同。请您看看是不是什么地方出现了问题呢?

7
jiangxinfeng 发表于 2012-12-24 20:18:04
LingHu 发表于 2012-12-24 10:46
bysort accper h touzi: gen num=_N
bysort accper h: egen mnum=max(num)
bysort accper h: gen ratio=m ...
谢谢!!

8
jiangxinfeng 发表于 2012-12-24 20:27:44
fgleric 发表于 2012-12-23 22:43
gen c=1
bys h touzi: egen n=count(c)
bys h: egen max=max(n)
我懂了,你帮我求出来的是分行业的值,我需要的是分年度分行业的数值~还是谢谢你!!

9
monstersivle 发表于 2012-12-28 07:14:48
insheet using inv.csv,names clear
br
bysort accper h: gen n=_N
drop nd
bysort accper h touzi: gen nd=_N if touzi==-1
bysort accper h touzi: gen nu=_N if touzi==1
bysort accper h: egen d=count(nd)
bysort accper h: egen u=count(nu)
drop nd nu
gen ratio=d/n if d>=u
replace ratio=u/n if d<u
* ratio above is the required indicator:
* for every year, every industry,
* the proportion of the greater one among the # of drops and ups.
gen dratio=d/n
gen uratio=u/n
不爱其亲而爱他人者,谓之悖德;不敬其亲而敬他人者,谓之悖礼。——《孝经》

10
peyzf 发表于 2013-1-1 07:20:25
learning.

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

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