как преобразовать текстовую переменную в числовую переменную в г - PullRequest
0 голосов
/ 20 января 2019

У меня проблема с преобразованием текстовой переменной в числовую переменную.Я думаю, что я успешно построил фиктивную переменную с несколькими уровнями.Тем не менее, когда я пытаюсь прочитать файл данных, категории этих переменных по-прежнему текстовые.

вот мой код, выходные данные и файл данных:

файл данных после записи

мой код

выход

после этого, когда я пытаюсь сгенерировать значение корреляции, он все еще показывает ошибку:

Ошибка в cor (hpNumeric): 'x' должно быть числовым

Любые предложения приветствуются!

1 Ответ

0 голосов
/ 20 января 2019

Было бы лучше увидеть ваш код напрямую, а не нажимать ссылки для загрузки.Если я правильно понимаю ваш код (он не полностью виден, и ваш «вывод» не является выводом команды summary(lm...)), вы переоценили проблему.

Ваша первая строка уже кодирует вашу переменнуюкак фактор, который скажет R автоматически создавать фиктивные переменные при выполнении регрессий и т. д. Используя матрицу контрастности, вы снова преобразовываете этот фактор в необработанное числовое значение.Это все, что вам действительно нужно:

df$x <- factor(<your variable data here as in your example>) 
m <- lm(y ~ x ..., data = df)

Если вы действительно хотите видеть свою переменную как целое число, вы можете использовать as.integer, но я думаю, вам не следует усложнять такие вещи.

Посмотрите типы данных в R для получения дополнительной информации о факторах.

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