R语言报错:cannot coerce type 'closure' to vector of type 'any'求解
错误原因及解决办法
- 错误根源:代码里的
dist是R的内置函数,直接在管道中写dist时,并没有调用这个函数处理前面的df,而是把dist这个函数对象(类型为closure)传递给了下一个hclust函数。但hclust需要的是距离矩阵(向量/矩阵类型),无法处理函数对象,因此触发cannot coerce type 'closure' to vector of type 'any'错误。 - 修正后的代码:
library(dplyr) dend1 <- df %>% dist() %>% hclust("complete") %>% as.dendrogram
也可以写成dist(.),明确指定用管道传递的对象作为参数,效果和dist()一致。
内容的提问来源于stack exchange,提问作者Nanda
相关产品推荐
相关产品推荐

