我正在尝试将R代码转换成Matlab,用于Fama和法国因素组合的构建。我收到以下错误,但我不知道该怎么办:
> # load("180619 data.ccm.RData")
> data.comp <- data.ccm %>%
+ rename(PERMNO=permno) %>% data.table %>% # ensure col names match crsp's
+ group_by(PERMNO) %>%
+ mutate(datadate = as.yearmon(datadate),
+ comp.count = row(.)) %>% # number of years in data; future option to cut first year
+ # tests based on BE spread show FF no longer impose this condition
+ ungroup %>% arrange(datadate, PERMNO) %>% data.frame %>%
+ distinct(datadate, PERMNO, .keep_all = TRUE)
错误:列comp.count
必须为长度1(组大小),而不是12358968另外:有50个或更多警告(使用warnings()查看前50个警告)
完整代码:https://drive.google.com/file/d/0BxvBvE2V-dFTVnZuLUFhZWNuazA/view
最佳
如果只想按组计算行数,请使用n()
mutate(datadate = as.yearmon(datadate),
comp.count = n())