如何在R中处理hist.default,'x'必须为数值型的问题?
当我们将非数值列或向量传递给hist函数时,就会出现错误hist.default,'x'必须为数值型。如果数据框中有一列是非数值型,或者向量是非数值型,并且想要创建该数据的直方图,可以使用barplot和table函数来创建。
查看以下示例
了解如何做到这一点。
示例
以下代码片段创建一个示例数据框:
x<-sample(LETTERS[1:5],20,replace=TRUE) df<-data.frame(x) df
创建了以下数据框
x 1 C 2 B 3 B 4 B 5 E 6 E 7 C 8 A 9 C 10 B 11 D 12 E 13 A 14 C 15 B 16 A 17 C 18 E 19 B 20 B
要在上面创建的数据框上使用hist函数创建x的直方图,请将以下代码添加到上面的代码片段中:
x<-sample(LETTERS[1:5],20,replace=TRUE) df<-data.frame(x) hist(df$x)
要在上面创建的数据框上使用barplot函数创建x的直方图,请将以下代码添加到上面的代码片段中:
x<-sample(LETTERS[1:5],20,replace=TRUE) df<-data.frame(x) barplot(table(df$x))
输出
如果将以上所有代码片段作为一个程序执行,则会生成以下输出:
广告