全部版块 我的主页
论坛 提问 悬赏 求职 新闻 读书 功能一区 经管百科 爱问频道
5200 9
2013-10-17
大家好,有谁知道这个问题怎么解决吗。
> dstats <- function(x)(c(mean=mean(x), sd=sd(x)))
> by(mtcars[vars],mtcars$am, dstats)
Error in is.data.frame(x) :
  (list) object cannot be coerced to type 'double'
In addition: Warning message:
In mean.default(x) : argument is not numeric or logical: returning NA
我看R语言实战上面也这么写的。能运行出结果,我的不知道什么问题……有会的,帮忙解答下,谢谢喽!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2013-10-17 19:59:42
好高深啊!!!!!!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-11-17 09:49:33
同求
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-3-11 13:02:13
我也遇到这个问题,怎么办,楼主解决了吗?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-3-11 13:13:35
在网上搜到的答案,我觉得应该是正确的,分享一下啊。

“那个应该是书上错了。
mean()函数只支持向量,不支持数据框输入。所以自定义函数dstats也不支持数据框输入。
解决办法是将dstats改成如下,就可以了:
dstats <- function(x) c(mean=sapply(x,mean), sd=sapply(x,mean))”

摘自:http://www.zhihu.com/question/28289052/answer/40217718
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-2-2 11:31:37
sunchaosailor 发表于 2015-3-11 13:13
在网上搜到的答案,我觉得应该是正确的,分享一下啊。

“那个应该是书上错了。
dstats <- function(x) c(mean=sapply(x,mean), sd=sapply(x,sd))是sd=sapply(x,sd),不是mean。
解决了我的问题,很赞!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群