Barplot不评估R中的数据

Jul*_*iaz 5 r

在此先感谢您的回复.我试图从csv文件创建堆积条形图,我遇到了以下打嗝:首先我将csv放入变量:

test <- read.csv(file=\"test4.csv\",sep=\",\",head=TRUE")
Run Code Online (Sandbox Code Playgroud)

然后我尝试使用以下内容创建条形图

barplot(test)
Run Code Online (Sandbox Code Playgroud)

我收到以下错误,

Error in barplot.default(test) : 'height' must be a vector or a matrix
Run Code Online (Sandbox Code Playgroud)

所以我试试

barplot(t(test))
Run Code Online (Sandbox Code Playgroud)

它的工作原理,但正如预期的那样,轴被切换,所以我试试

barplot(t(t(test)))
Run Code Online (Sandbox Code Playgroud)

它有效,但我觉得必须有一个比转置转置更好的解决方案.

小智 12

问题是read.csv输出数据帧barplot期望向量或矩阵.barplot转置时该功能有效,因为它t()会将数据帧强制转换为矩阵.

如果你要么开始

test <- as.matrix(read.csv(file="test4.csv",sep=",",head=TRUE))
Run Code Online (Sandbox Code Playgroud)

或者稍后再做

barplot(as.matrix(test))
Run Code Online (Sandbox Code Playgroud)

那你应该没问题.

  • 你的意思是你不想包括`test`的第一列?在这种情况下,你可以调用`barplot(as.matrix(test [,2:ncol(test)]))`(即从第二个开始以`test`的列开始,然后以多少列`test`结束(这是'ncol(test)`)). (2认同)