在R中为单个列创建列的图

时间:2017-08-29 20:34:07

标签: r

在下面的表格中,我试图在X3-X3.6之间创建一个与风险评分相对应的散点图,以查看是否存在任何相关性。我将所有这些数据存储在数据框中。

我是R.的新手。提取这些数据的最佳方法是什么?我正在使用plotpairs以及多行代码来提取不同的列,并且它变得非常混乱。

尝试

plot(cancerData[2], cancerData[3])

,对应于Risk.Score和X3.GAL

中的风险评分col

这会导致以下错误:

Error in stripchart.default(x1, ...) : invalid plotting method

enter image description here

1 个答案:

答案 0 :(得分:0)

您可以创建一个循环来创建所有不同的图。如果您的数据框命名为"数据"对于循环的代码看起来像这样:

# iterate the loop for variables x3 to the end
for (variable in names(data)[3:ncol(data)]) {
  # plot rating versus the variable of the iteration
  # in order to reference the column you can paste the variable name to "data$" and evaluate the text
  plot( data$rating, eval(parse( text = paste0("data$", variable))) )
}

您也可以执行相同的循环,而是引用列位置

for ( variable in 3:ncol(data) ) {
plot( data$rating, unlist(data[ ,variable]) )
}

您也可以使用corrplot库与数据框创建相关矩阵。循环创建散点图将为您提供大量输出。如果你摆脱了错误的列,你可以这样做:

plot(data)

这将创建一个散点图矩阵,但是图表很小,有很多变量,因此很难阅读。