1
是否有命令查看分类变量是如何编码的?R类别变量值
例如,我有一个名为HbA1c的变量,我看到的类别是< 5.7和> = 5.7。我想知道什么值< 5.7和≥= 5.7(如果它是0或1或2)。我需要回归分析。
对不起,如果这个问题已被解决,但我无法找到帖子。
预先感谢您。
是否有命令查看分类变量是如何编码的?R类别变量值
例如,我有一个名为HbA1c的变量,我看到的类别是< 5.7和> = 5.7。我想知道什么值< 5.7和≥= 5.7(如果它是0或1或2)。我需要回归分析。
对不起,如果这个问题已被解决,但我无法找到帖子。
预先感谢您。
如果x
是因素(技术在R A分类变量名),然后levels(x)
给你为了水平,所以像
setNames(1:length(levels(f)),levels(f))
## a b c
## 1 2 3
会给你一个对应表。
您的评论的问题并不完全清楚,但如果你想运行具有从零开始数值的回归,我会尝试这样的:
mydata$n <- as.numeric(mydata$f)-1
(与因素相关的数字代码总是从1运行到N;这会给你一个从0到N-1运行的数字变量)。然后你可以运行回归是这样的:
lm(y~n,data=mydata)
我用下面的命令:'名称(1:长度(水平(DAT1 $ HbA1ckatnorm)),层次(DAT1 $ HbA1ckatnorm))',我也得到一个表它显示的水平为'1 2'。如果我现在想重新编码这个变量,我使用'library car'中的'recode'函数。我的代码看起来像'recode(dat1 $ HbA1ckatnorm,“'1'='0';'2'='1'”)'但我得到一个错误显示'级别:<5.7 > = 5.7',当然,重新编码功能不起作用。 –