R语言如何修复:Invalid factor level, NA generated in R
在这篇文章中,我们将通过实例来研究如何修复错误: 无效的因子水平,生成NA。
当程序员试图向R语言中的因子变量添加一个事先不存在的定义水平的值时,编译器会产生这样的警告信息。完整的警告信息在下面给出。
何时可能发生错误
让我们创建一个数据框。
输出
在这个例子中,团队变量只有三种类型的值:”Alpha”、”Beta”、”Charlie”。现在,我们将尝试在数据框的最后插入一个额外的行,该行的队名等于 “Gamma”。
例子
输出
输出
编译器产生了警告信息。这是因为 “Gamma “这个值还没有出现在团队列下。请注意,这只是一个警告信息,编译器会自动在数据框的末尾插入一个新的行,但单元格中没有 “Gamma”,其值将等于NA。
输出
如何避免这个警告
我们可以通过首先将因子变量转换为字符变量,然后在添加额外的行之后再将其转换为因子变量来摆脱这个警告。
例子
输出
正如你在输出中看到的,警告以及 “NA “的东西已经从数据框架中消除了。现在让我们来显示一次修改后的数据框架的结构。
输出