楼主: tomy70585
1103 3

[数据管理求助] 想形成一個變數 [推广有奖]

  • 0关注
  • 0粉丝

硕士生

17%

还不是VIP/贵宾

-

威望
0
论坛币
76 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
7437 点
帖子
35
精华
0
在线时间
240 小时
注册时间
2013-10-8
最后登录
2014-6-14

楼主
tomy70585 发表于 2013-11-14 19:49:48 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
這是我的股利資料

ASs.xlsx (21.63 MB)
擷取部分資料
date110111021103

1999/1/5

0.33

13.99

0

1999/1/6

2.2

3.33

0

1999/1/7

2.17

3.72

0.85

1999/1/8

1.28

1.11

0.21

1999/1/11

0.82

0.55

2.74

1999/1/12

1.07

2.29

0



其中1101 1102 1103 為公司代碼
日期從1999年至2012年年底
資料中若還有空格表示為缺失值

我想要形成一個變數C=A/B
A:為每季季底前30天的日平均股利
例如:2000年第一季季末為3/31號,也就是在3/31直接回溯30天資料求取日平均股利

B:為每季季底前一年的日平均股利
例如:2000年第一季季末為3/31號 但卻不能包含季末前30日的資料,也就是排除了A變數的資料期間
          所以我要抓從1999/4/1~2000/2月底左右這段期間的日平均股利(因為股票不是每天開盤)



曾經想過另一種變數的形成方式
A 直接抓出整月的的日平均股利:以上述為例就是以三月份為資料期間,直接平均
B 也是仿照上述,直接抓出前一年(前365天的)資料,然後平均之
但是這樣的變數一樣是很困擾


而目前想從2000年第一季抓到2012第四季
想請問版上的高手們,是否可以提供一點想法?







二维码

扫码加我 拉你入群

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

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

关键词:date 日平均 第一季 缺失值 ATE

沙发
夏目贵志 发表于 2013-11-14 22:35:09
1. generate a moving average of the last 30 trading days, which is roughly A
2. generate a moving average of the data between 360 days and 31 days, which is roughly B
3. generate C=A/B
4. generate a quarter variable based on the date variable
5. generate the maximum of date by quarter
6. keep only the maximum day of each quarter
then C is roughly what you want.
don't bother with trading days vs. calendar days... not worth the trouble.

藤椅
夏目贵志 发表于 2013-11-14 22:35:38
you can use a foreach loop to do so for all the stocks automatically.

板凳
tomy70585 发表于 2013-11-16 13:15:35
夏目贵志 发表于 2013-11-14 22:35
1. generate a moving average of the last 30 trading days, which is roughly A
2. generate a moving a ...
先謝謝你的回覆

但是可以再詳細說明一下4.5.6點嗎

謝謝

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

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