首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >R edgar错误:输入年份不是数字

R edgar错误:输入年份不是数字
EN

Stack Overflow用户
提问于 2019-05-22 12:13:24
回答 2查看 80关注 0票数 0

我对3家公司(ciknum变量)和每家公司提交年度报告的年份(Fyearq)进行了“测试”数据:

代码语言:javascript
复制
    ciknum  fyearq
1   1408356 2012
2   1557255 2012
3   1557255 2013
4   1557255 2014
5   1557255 2015
6   1557255 2016
7   1555538 2013
8   1555538 2014
9   1555538 2015
10  1555538 2016

在获得MasterIndex文件夹并运行this代码(请参阅建议的解决方案)之后,我使用R包获得10-K文件。我运行以下代码:

代码语言:javascript
复制
for (i in 1:nrow(test)){
  firm<-test[i,"ciknum"] #edit: seems like mistake can be here since new firm data only contains 1 obs of 1 variable
  year<-test[i,"fyearq"] #edit: seems like mistake can be here since new year data only contains 1 obs of 1 variable
  my_getFilings(firm,'10-K',year,downl.permit="y")
}

它不断地吐出以下错误:Error: Input year(s) is not numeric。我检查了变量类型,似乎我的fyearq变量是数字变量。

代码语言:javascript
复制
sapply(test,class)
   ciknum    fyearq 
"numeric" "numeric"

不太明白为什么“数值”的function变量不是由my_getFilings函数读取的。任何帮助都将不胜感激。

提前谢谢你。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-08-12 15:35:55

谢谢@bartosz25 25和M Grace

最后,我通过以下代码使其工作:

代码语言:javascript
复制
for (row in 1:nrow(test)){
  firm <- as.numeric(test[row, "ciknum"])           
  year <- as.numeric(test[row, "fyearq"])
  my_getFilings(firm, c('10-K'), year, downl.permit="y")
}

很抱歉之前没有发出去。

票数 0
EN

Stack Overflow用户

发布于 2019-08-11 12:00:21

马丁斯的命令在这里似乎很重要。我通过使用函数的描述符来解决这个问题,因此

代码语言:javascript
复制
my_getFilings(firm,'10-K',year,downl.permit="y")

正如你所写的

代码语言:javascript
复制
my_getFilings(cik.no = firm, form.def = '10-K', filing.year = 2016, downl.permit = "y")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56256552

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档