R 的 class.ind() 函数有什么作用,我应该在什么时候使用它?
What does R's class.ind() function do and when would I use it?
R 文档说 nnet::class.ind()
从给定因子生成 class 指标函数。
它是否将因子转换为某种二进制class化?
我们何时以及为何使用此功能?请给我一些例子。
感谢任何帮助。谢谢。
是的。它根据以下因素创建 indicator/dummy 个变量:
> 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
R 文档说 nnet::class.ind()
从给定因子生成 class 指标函数。
它是否将因子转换为某种二进制class化?
我们何时以及为何使用此功能?请给我一些例子。
感谢任何帮助。谢谢。
是的。它根据以下因素创建 indicator/dummy 个变量:
> 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