全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
1375 8
2020-09-23
如题,我有每支个股每日的收益率,要按省份加权平均得到省级每日收益率,数据结构如下图,收益率是return,权重是sizelag
QQ截图20200923082401.png

以下是我写的代码 QQ截图20200923084603.png
复制代码


只是很简单的for循环,但是运行特别慢,总样本量是147天*3372支个股=约49万条数据,跑了整整一夜,7个小时都没有出结果
提取了一个样本量为1122条数据的小样本,跑了3分钟才出结果

所以问题究竟出在哪里呢?感谢帮助
二维码

扫码加我 拉你入群

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

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

全部回复
2020-9-23 08:40:39
代码中的fulldata 以及用来装载结果的return size turnover都是数据框    后三个行名已改为日期
二维码

扫码加我 拉你入群

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

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

2020-9-23 19:41:11
感觉程序不是作者想表达的意思
看看这个是不是你要的return

复制代码


二维码

扫码加我 拉你入群

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

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

2020-9-24 16:21:37
drunkfish69 发表于 2020-9-23 19:41
感觉程序不是作者想表达的意思
看看这个是不是你要的return
谢谢帮助
我之前发的程序包含求加权平均收益率、求换手率和求总市值三个功能。。

我把您给的代码运行之后提示
Error in weighted.mean.default(., return, sizelag/sum(sizelag)) :
  'x' and 'w' must have the same length

这是不是因为程序把前面传入的整个fulldata当成了x,把return当成了权重?
请问这个该如何修改呢
二维码

扫码加我 拉你入群

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

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

2020-9-24 16:43:26
我把您给的代码运行之后提示
Error in weighted.mean.default(., return, sizelag/sum(sizelag)) :
  'x' and 'w' must have the same length
return或sizelag有没有空值,譬如说股票停牌了(不是很懂股票),或者把样本数据发我看看
二维码

扫码加我 拉你入群

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

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

2020-9-24 17:28:37
复制代码


直接管道到weighted.mean()是有问题,试试这样可以吗?
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群