aggregate函数去重复时报错如何处理?
代码如下
stad.fkpm.pro.1 <- aggregate(stad.fkpm.pro, list(stad.fkpm.pro$gene), FUN=sum)
运行后报错,提示
Error in FUN(X[[i]], ...) : invalid 'type' (character) of argument
直白的翻译就是在进行FUN(X[[i]],…)时,数据框中包含无效的参数'类型'(字符)
打开stad.fkpm.pro.1,发现第一列为gene,因此FUN=sum时,需要除外gene这一列
修改代码为
stad.fkpm.pro.1 <- aggregate(stad.fkpm.pro[, 2:ncol(stad.fkpm.pro)], list(stad.fkpm.pro$gene), FUN=sum)
运行成功
在使用R语言的aggregate函数对数据框去重并求和时,遇到错误提示invalidtype(character)ofargument。问题出在数据框中的字符类型参数。通过修改代码,排除gene列后,aggregate函数成功运行。解决方案是只对除gene列外的其他列进行操作,如:aggregate(stad.fkpm.pro[,2:ncol(stad.fkpm.pro)],list(stad.fkpm.pro$gene),FUN=sum)。
862






