楼主: 朱星
15648 8

[数据管理求助] 如何删除观测值少于一定数量的变量 [推广有奖]

  • 0关注
  • 0粉丝

已卖:174份资源

大专生

13%

还不是VIP/贵宾

-

威望
0
论坛币
1712 个
通用积分
0.3000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
250 点
帖子
25
精华
0
在线时间
38 小时
注册时间
2014-10-20
最后登录
2015-12-15

楼主
朱星 学生认证  发表于 2015-10-5 19:36:45 |AI写论文
5论坛币
我有1900多家上市公司的30年的股价月回报率,但每家公司上市时间不同,所以不是所有公司都有30年的数据,有的是从中途开始有的。现在我想删除掉数据量少于一定年数的公司,比如不满30年的全部删除,该如何删除?

附上小样本

最佳答案

夏目贵志 查看完整内容

比如 xtset company_id year bys company_id: egen number_of_years = count(year) drop if number_of_years
关键词:观测值 上市公司 上市时间 回报率 小样本 删除符合条件的变量

沙发
夏目贵志 发表于 2015-10-5 19:36:46
比如
xtset company_id year
bys company_id: egen number_of_years = count(year)
drop if number_of_years<30
根据实际需要修改一下就好了
已有 1 人评分热心指数 收起 理由
Scarlett711 + 1 精彩帖子

总评分: 热心指数 + 1   查看全部评分

藤椅
朱星 学生认证  发表于 2015-10-5 19:39:56
在stata里
已有 1 人评分经验 收起 理由
夏目贵志 -5 发帖格式不符规定,请参照版规发贴,谢谢

总评分: 经验 -5   查看全部评分

板凳
hyu9910 在职认证  发表于 2015-10-5 20:01:06
我没在STATA里面删除过记录。 但是,你对满足某些条件的公司做标记,肯定可以的。 譬如通过循环实现。

报纸
朱星 学生认证  发表于 2015-10-6 10:38:49
夏目贵志 发表于 2015-10-6 01:28
比如
xtset company_id year
bys company_id: egen number_of_years = count(year)
因为是stata小白 麻烦你说的具体一点,company_id要怎么定义呢 我每家公司都有序号,然后是月回报率,声明的是月是序列
tsset v1,monthly,但是v1项是类似1988m2这种的
拜托拜托

地板
夏目贵志 发表于 2015-10-6 11:02:32
朱星 发表于 2015-10-6 10:38
因为是stata小白 麻烦你说的具体一点,company_id要怎么定义呢 我每家公司都有序号,然后是月回报率,声明 ...
那你这样更简单了
foreach var of varlist t* {
    su `var'
        local n = r(N)
    if `n'<30 {
                drop `var'
        }
}

7
烟雨_ 学生认证  发表于 2023-2-5 00:39:52
如果剔除企业数量少于一定量的行业要怎么写代码呀,count(year)改成count(industrycode)吗
求完整代码T T

8
争取发SCI 发表于 2024-11-4 11:38:33
烟雨_ 发表于 2023-2-5 00:39
如果剔除企业数量少于一定量的行业要怎么写代码呀,count(year)改成count(industrycode)吗
求完整代码T T
我也遇到这个问题了,请问您后续如何操作的

9
小嘉是个神经病 发表于 2025-1-31 19:56:06
终极解决方案
假如已知频率为13,则
gen number=1
bys group:egen total=sum(number)
drop if total<13

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-9 06:36