我对3家公司(ciknum变量)和每家公司提交年度报告的年份(Fyearq)进行了“测试”数据:
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文件。我运行以下代码:
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变量是数字变量。
sapply(test,class)
ciknum fyearq
"numeric" "numeric"不太明白为什么“数值”的function变量不是由my_getFilings函数读取的。任何帮助都将不胜感激。
提前谢谢你。
发布于 2019-08-12 15:35:55
谢谢@bartosz25 25和M Grace
最后,我通过以下代码使其工作:
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")
}很抱歉之前没有发出去。
发布于 2019-08-11 12:00:21
马丁斯的命令在这里似乎很重要。我通过使用函数的描述符来解决这个问题,因此
my_getFilings(firm,'10-K',year,downl.permit="y")正如你所写的
my_getFilings(cik.no = firm, form.def = '10-K', filing.year = 2016, downl.permit = "y")https://stackoverflow.com/questions/56256552
复制相似问题