[问题] excel无法计算变项

楼主: scts1215 (Shawn)   2017-08-31 01:28:02
目前想学习R
刚试用却遇到困难
自己做了一个excel如下
档名为test
age
52
46
20
25
26
60
35
25
36
68
42
汇入到Rstudio的语法为:
> library(readxl)
> test <- read_excel("~/R/test.xlsx", col_types = c("numeric"))
但我输入平均值 mean(test)
却出现这样的讯息 Warning message:
In mean.default(test) : argument is not numeric or logical: returning NA
再输入标准差 sd(test)
出现Error in is.data.frame(x) :
(list) object cannot be coerced to type 'double'
平均值的部分我有使用colmeans有成功,
但我疑问是若使用scan()自行输入资料跑mean(test)和sd(test)是能成功的
烦请各位解惑
谢谢
作者: locka (locka)   2017-08-31 03:45:00
把参数col_types=c(…)改成col_types="numeric"试试看
作者: f496328mm (为什么会流泪)   2017-08-31 09:55:00
资料汇进来后转型态?http://imgur.com/4yLSLzi一般来说 用 csv 比较好然后你是 data.frame 所以要 test$age想要同时就用 summary 可以看一些基本的统计值例如 summary(test) 不过没有 sd 就是了apply(test,2,sd) apply(test,2,mean)这两个应该是你要的
作者: Wush978 (拒看低质媒体)   2017-08-31 19:39:00
你对于R语言物件的型态不太清楚,建议找一些入门教材参考否则你以后会一直遇到类似的问题
作者: jackyu777 (依德尔特)   2017-08-31 23:49:00
推R语言翻转教室
作者: clsmbstu   2017-09-01 00:09:00
我想用scan会成功是因为scan跟read_excel给你的资料型态不同。scan给你的是一串值(vector),read_excel给你的是一张表(data frame,只是只有一行)。求一串值的平均很合理,但是求一张表的平均对电脑来说就有点一头雾水了。这也是为什么R会回报那些错误或警告讯息给你的原因。

Links booklink

Contact Us: admin [ a t ] ucptt.com