我有一个数据帧:
head(df) Year Find Found 6982 1901 267 246 6983 1901 271 251 6984 1902 317 236 6985 1903 339 244 6986 1904 339 260 6987 1903 345 15 5255 1902 47 45 5256 1901 46 NA 5257 1906 45 150 5258 1905 42 24 5259 1910 42 78 5260 1910 41 NA
当我试图聚合它时:
aggdata <-aggregate(df,by=list(Year),FUN=sum,na.rm=TRUE)
我收到一个错误
Error in aggregate.data.frame(AndelKvinnorUttax,by = list(Year),FUN = sum,: object 'Year' not found
我找不到问题……
我的解决方案是:
aggr=cbind(aggregate(data=df,Find~Year,na.rm=TRUE),aggregate(data=df,Found~Year,na.rm=TRUE))[,c(1,2,4)]
任何人?
最好的祝福!
解决方法
aggregate不会自动评估data参数中data.frame范围内的Year.你必须明确告诉它在哪里找到年份,即….
aggdata <-aggregate(df,by=list(df$Year),na.rm=TRUE) # Group.1 Year Find Found #1 1901 5703 584 497 #2 1902 3804 364 281 #3 1903 3806 684 259 #4 1904 1904 339 260 #5 1905 1905 42 24 #6 1906 1906 45 150 #7 1910 3820 83 78