Х должен быть числовым значением - PullRequest
0 голосов
/ 05 марта 2020

У меня есть задание для класса статистики, где я скопировал код от учителя, но я продолжаю получать ошибку, где x должен быть числовым, и я не вижу, в чем проблема

Survey=read.csv("ClassSurvey.csv", na.strings = c("",          " ",   "NA"))
attach(Survey)
library(FSAdata)                  

op = par(oma=c(0,0,1.5,0), mar=c(3,3,2,1))
hist(Height ~ Gender,
     las=1,
     nrow=2, ncol=1,
     cex.main=0.9, cex.lab=0.8, cex.axis=0.8, 
     mgp=c(1.8,0.6,0), 
     xlab = "Height (cms)")

благодарю вы !!

1 Ответ

0 голосов
/ 05 марта 2020

У вас есть пара проблем. Во-первых, вы не можете создать гистограмму для переменной, которая не является цифрой c. Попробуйте это:

data(ToothGrowth)
str(ToothGrowth)
'data.frame':   60 obs. of  3 variables:
 $ len : num  4.2 11.5 7.3 5.8 6.4 10 11.2 11.2 5.2 7 ...
 $ supp: Factor w/ 2 levels "OJ","VC": 2 2 2 2 2 2 2 2 2 2 ...
 $ dose: num  0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 ...

attach(ToothGrowth)

Попытка нарисовать гистограмму supp, переменную класса "factor" (это не цифра c).

> hist(supp)
Error in hist.default(supp ~ dose) : 'x' must be numeric

Ваша вторая проблема является то, что функция hist не принимает формулу y ~ x. Таким образом,

hist(len~supp) 

также терпит неудачу, хотя len является цифрой c. Это работает, хотя:

hist(len) 

Интересно, вы неправильно скопировали код учителя? Или код учителя неверный? Или что-то другое.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...