请选择 进入手机版 | 继续访问电脑版
楼主: 西寺九奈
866 6

[问答] 请教各位关于R语言循环的问题 [推广有奖]

  • 0关注
  • 0粉丝

等待验证会员

初中生

42%

还不是VIP/贵宾

-

威望
0
论坛币
18 个
通用积分
1.0000
学术水平
1 点
热心指数
0 点
信用等级
0 点
经验
105 点
帖子
9
精华
0
在线时间
12 小时
注册时间
2017-11-27
最后登录
2019-5-14

西寺九奈 发表于 2019-4-16 14:15:34 |显示全部楼层 |坛友微信交流群

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
大家好,这次的问题是我在用for循环,把每支股票代码的数据rbind的时候遇到的,我是用for i 600000:6003999去循环,可是并不是这4000支股票的数据都齐全,比如600013这支股票就没有,我做出的结果就是600000到600012股票数据的合并,R语言因为找不到600013就停止了,请问如何书写代码可以当循环找不到股票的时候继续搜下一支股票呢,数据缺失的股票不只600013一支,所以不能直接写当i=600013时忽略,谢谢!
二维码

扫码加我 拉你入群

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

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

关键词:600000 600012 600399 股票数据 股票代码

cheetahfly 在职认证  发表于 2019-4-16 16:32:17 |显示全部楼层 |坛友微信交流群
下载一个最新的所有上市公司的代码,然后在该集合中循环吧。

使用道具

万人往LVR 在职认证  发表于 2019-4-16 17:36:26 |显示全部楼层 |坛友微信交流群
循环体外侧加个try()

  1. for(i in 600:603){
  2.   try({
  3.     rbind.....
  4.   })
  5. }
复制代码


可以百度学习一下try...catch的用法
已有 1 人评分论坛币 收起 理由
cheetahfly + 10 热心帮助其他会员

总评分: 论坛币 + 10   查看全部评分

使用道具

小朝 发表于 2019-4-16 18:36:46 |显示全部楼层 |坛友微信交流群
请上传样本数据

使用道具

西寺九奈 发表于 2019-4-17 14:28:06 |显示全部楼层 |坛友微信交流群
cheetahfly 发表于 2019-4-16 16:32
下载一个最新的所有上市公司的代码,然后在该集合中循环吧。
谢谢,我已经解决了

使用道具

西寺九奈 发表于 2019-4-17 14:28:25 |显示全部楼层 |坛友微信交流群
万人往LVR 发表于 2019-4-16 17:36
循环体外侧加个try()
谢谢,我已经解决了

使用道具

西寺九奈 发表于 2019-4-17 14:30:34 |显示全部楼层 |坛友微信交流群
for(i in 600001:603999)
{
df1<-try(df%>% filter(df$Stkcd==i))
if(nrow(df1)<=1)
{
next
}else
{
}
}
我是这样解决的,因为当搜不到某只股票,R生成的该股票的数据是零行,所以我就写了一下只有当行数大于1我才进行循环,小于等于1的时候就跳过该股票
已有 2 人评分论坛币 学术水平 收起 理由
雪凤夏洛 + 1 精彩帖子
cheetahfly + 20 观点有启发

总评分: 论坛币 + 20  学术水平 + 1   查看全部评分

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-3-29 10:08