R的class.ind()函数做什么以及何时使用它?

时间:2015-04-04 15:18:23

标签: r categorical-data r-factor dummy-variable nnet

R文档说nnet::class.ind()从给定因子生成类指示符函数。

它是否将因子转换为某种二元分类?

我们何时以及为何使用此功能?请举几个例子。

任何帮助表示赞赏。谢谢。

1 个答案:

答案 0 :(得分:1)

是。它从一个因子创建指标/虚拟变量:

> set.seed(1)
> x <- factor(sample(1:3, 10, TRUE))
> nnet::class.ind(x)
      1 2 3
 [1,] 1 0 0
 [2,] 0 1 0
 [3,] 0 1 0
 [4,] 0 0 1
 [5,] 1 0 0
 [6,] 0 0 1
 [7,] 0 0 1
 [8,] 0 1 0
 [9,] 0 1 0
[10,] 1 0 0

它与使用model.matrix基本相同:

> model.matrix(~0+x)
   x1 x2 x3
1   1  0  0
2   0  1  0
3   0  1  0
4   0  0  1
5   1  0  0
6   0  0  1
7   0  0  1
8   0  1  0
9   0  1  0
10  1  0  0