我已经搜索过高低,应该是一个非常简单的答案。简而言之,在尝试在R中生成分布图时,我一直收到错误' x'必须是数字。我试图孤立这个问题并相信我找到了它,但不知道它为什么会出现。我甚至从我的初始数据集(相对复杂,200,000个值都在0和1之间)移动到一个非常简单的通用数据集仍然返回相同的问题。我会引导你完成我正在做的事情,你告诉我为什么我有点慢。
> test <- read.table("/Users/timjenkins/Desktop/Test5hmcR/test.txt", header = T)
> str(test)
'data.frame': 200 obs. of 4 variables:
$ AGE : int 20 53 44 37 26 41 39 28 33 39 ...
$ HEIGHT: int 176 167 170 173 170 165 174 171 180 166 ...
$ WEIGHT: int 77 56 80 89 71 62 75 68 100 74 ...
$ CHOL : int 195 250 304 178 206 284 232 152 209 150 ...
> head(test)
AGE HEIGHT WEIGHT CHOL
1 20 176 77 195
2 53 167 56 250
3 44 170 80 304
4 37 173 89 178
5 26 170 71 206
6 41 165 62 284
> weight <- test$weight
> hist(weight)
Error in hist.default(weight) : 'x' must be numeric
> density(weight)
Error in density.default(weight) : argument 'x' must be numeric
> head(weight)
NULL
> str(weight)
NULL
> w <- as.numeric(weight)
> str(w)
num(0)
> head(w)
numeric(0)
有什么想法?我可能遗漏了一些非常基本的东西,但是我已经在R中制作了许多直方图并且直到今天才遇到这个问题,现在无论我使用什么数据集,它都会出现,这告诉我我做的事情非常错误(但是至少我是一致的)。提前谢谢。
答案 0 :(得分:2)
在R中,案件很重要。重量!=重量
尝试
weight <- test$WEIGHT