1

我有一个数据表,其中男性和女性列以及一个有和没有响应的列,我只需要将它们更改为 0 和 1 值,我该怎么做?

4

3 回答 3

3

我怀疑您是否确实需要这样做,但方法如下(假设它们是因素):

numMF <- as.numeric(MFfac) -1 # will be 0 for F and 1 for M in the usual sorting of factor levels

如果它们真的是字符向量,那么将我认为是一个因素的 MFfac 包装起来。或者:

numMF <- match(MFvec, c("Female", "Male") ) -1

 match( c("Female","Male", "Female"),  c("Female", "Male") )
[1] 1 2 1

match 函数是数据转换的重要资源。

于 2012-11-24T01:41:55.167 回答
0

将因子转换为指标变量的一般方法是使用model.matrix函数。但大多数时候您不需要这样做,因为建模函数(例如lm)会调用model.matrix您。

于 2012-11-24T04:22:37.477 回答
0

您可以将因子直接强制为数字向量:as.numeric(factor(x)). 如果您不喜欢默认级别排序,请使用“factor”的“levels”参数明确指定级别。

于 2012-11-24T00:44:09.373 回答