楼主: 小青柑
1329 5

[编程问题求助] 如何保留月末的20天数据 [推广有奖]

  • 0关注
  • 0粉丝

初中生

19%

还不是VIP/贵宾

-

威望
0
论坛币
2 个
通用积分
0.0000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
223 点
帖子
3
精华
0
在线时间
20 小时
注册时间
2021-9-27
最后登录
2025-8-29

楼主
小青柑 发表于 2021-10-18 21:22:06 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
本人已通过搜索筛选出每月的最后一天和一个保留前后指定行的方法,但给出的方法仍然依赖于_n的计数后匹配。我手上的日度交易数据中间有一部分的缺失,导致最后每月保留的天数不一致。我只想保留每月的最后有数据的20天以计算指标,恳请不吝赐教。
  1. * Example generated by -dataex-. To install: ssc install dataex
  2. clear
  3. input int date str18 SZ float(year month day max_day)
  4. 14613 "4.813753581661895"  2000 1  4 28
  5. 14614 "-1.257517769272838" 2000 1  5 28
  6. 14615 "3.986710963455165"  2000 1  6 28
  7. 14616 "4.046858359957393"  2000 1  7 28
  8. 14619 "3.070624360286604"  2000 1 10 28
  9. 14620 "-5.660377358490568" 2000 1 11 28
  10. 14621 "-4.00000000000002"  2000 1 12 28
  11. 14622 "-.5482456140350731" 2000 1 13 28
  12. 14623 "-1.433296582138928" 2000 1 14 28
  13. 14626 "1.118568232662192"  2000 1 17 28
  14. 14627 "-2.15707964601769"  2000 1 18 28
  15. 14628 ".5652911249293383"  2000 1 19 28
  16. 14629 ".1124227093872844"  2000 1 20 28
  17. 14630 ".8422234699607107"  2000 1 21 28
  18. 14633 "-2.561247216035643" 2000 1 24 28
  19. 14634 "1.314285714285726"  2000 1 25 28
  20. 14635 "-.5076142131979752" 2000 1 26 28
  21. 14636 "1.417233560090702"  2000 1 27 28
  22. 14637 "3.40972610396869"   2000 1 28 28
  23. 14654 "10.10810810810812"  2000 2 14 29
  24. 14655 "-4.46735395189004"  2000 2 15 29
  25. 14656 "-3.237410071942455" 2000 2 16 29
  26. 14657 "-.1593202336696593" 2000 2 17 29
  27. 14658 "-2.074468085106387" 2000 2 18 29
  28. 14661 "2.715915263443779"  2000 2 21 29
  29. 14662 "-3.490216816499213" 2000 2 22 29
  30. 14663 "-.8219178082191634" 2000 2 23 29
  31. 14664 ".4419889502762399"  2000 2 24 29
  32. 14665 "-.4950495049505005" 2000 2 25 29
  33. 14668 "2.598120508568257"  2000 2 28 29
  34. 14669 "-1.293103448275853" 2000 2 29 29
  35. 14670 "2.67467248908296"   2000 3  1 31
  36. 14671 "-2.286018075491756" 2000 3  2 31
  37. 14672 "1.088139281828074"  2000 3  3 31
  38. 14675 "-1.829924650161469" 2000 3  6 31
  39. 14676 "4.331140350877211"  2000 3  7 31
  40. 14677 "-1.576458223857067" 2000 3  8 31
  41. 14678 "7.207688200747446"  2000 3  9 31
  42. 14679 "-5.179282868525887" 2000 3 10 31
  43. 14682 ".4726890756302436"  2000 3 13 31
  44. 14683 "-2.822791427077879" 2000 3 14 31
  45. 14684 "-.8068854222700231" 2000 3 15 31
  46. 14685 "-2.819956616052062" 2000 3 16 31
  47. 14686 "1.395089285714285"  2000 3 17 31
  48. 14689 ".2751788662630564"  2000 3 20 31
  49. 14690 ".2195389681668553"  2000 3 21 31
  50. 14691 "1.204819277108436"  2000 3 22 31
  51. 14692 ".7034632034632002"  2000 3 23 31
  52. 14693 "-.5910800644814698" 2000 3 24 31
  53. 14696 "1.567567567567573"  2000 3 27 31
  54. 14697 "-.5321979776476706" 2000 3 28 31
  55. 14698 "-1.070090957731435" 2000 3 29 31
  56. 14699 ".4326663061114228"  2000 3 30 31
  57. 14700 "-1.077005923532565" 2000 3 31 31
  58. end
  59. format %td date
复制代码




二维码

扫码加我 拉你入群

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

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

关键词:generated generate install example format

沙发
1226407869 学生认证  发表于 2021-10-19 07:31:22 来自手机
小青柑 发表于 2021-10-18 21:22
本人已通过搜索筛选出每月的最后一天和一个保留前后指定行的方法,但给出的方法仍然依赖于_n的计数后匹配。 ...
Foreach month in 1 3 5 7 8 10 12{<br>
     drop if (day &lt;10 &amp; month ==\'month\')<br>
}
后面其他的类似处理。foreach语法不一定对思路是这样。另外手机上打的,局部变量month的标识不对,记得改

藤椅
黃河泉 在职认证  发表于 2021-10-19 12:45:43
请试试
  1. bys year month (date): gen t = _n
  2. bys year month (date): egen t1 = count(t)
  3. gen d = t1-t+1
  4. keep if d < 21
复制代码
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
Sunknownay + 3 + 3 + 3 热心帮助其他会员

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

板凳
pengxhan 发表于 2021-10-19 17:41:06 来自手机
小青柑 发表于 2021-10-18 21:22
本人已通过搜索筛选出每月的最后一天和一个保留前后指定行的方法,但给出的方法仍然依赖于_n的计数后匹配。 ...
月末二十天是连续计算还是可以分开有间隔,就是有些天没有数据。没有说清楚。

报纸
蓝色 发表于 2021-10-20 09:29:56
  1. gsort +year +month -date
  2. by year month: gen  id=_n
  3. keep if id<21
复制代码

地板
pengxhan 发表于 2021-10-20 10:30:44
保留每月的最后有数据的20天,不足20天的需不需要删除?

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

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