全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
8593 2
2017-02-16
复制代码
很奇怪为什么dataframe里面的数据可以单独求平均值,但是用apply函数就不能一起求了,并且用了as.numeric()之后也不能求,谢谢!
二维码

扫码加我 拉你入群

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

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

全部回复
2017-2-17 08:14:38
顶一个啊
二维码

扫码加我 拉你入群

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

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

2017-2-18 21:24:27
这个,涉及到一个变量强制转换问题。
首先,我们要知道apply操作的对象是一个matrix,而matrix有一个很重要的特点,所有元素都是同一种数据类型。要么全是character,要么全是numeric或者其它一种类型。
楼主,你的问题在于,使用apply时,虽然你设定了2为列,但在这个操作过程中,R强制使用了as.matrix对这个data frame进行了转换。转换的结果就是所有的元素都变成了character,因为如果有numeric类型和character,会被统一转换成character,不信你可以用apply试一下:
复制代码

所以正确使用apply的做法应该是:
复制代码

不知道这样说,是否清楚了哈
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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