我正在努力学习R.我花了4个小时试图了解什么是最容易发生的问题。如何将列转换为对象?
我想在这个阶段做的只是两列内容的线性回归。在Stata中,我可以输入类似
的内容reg column1 column2
在R中,我似乎首先需要将列转换为对象。我知道将数字,字符串或逻辑值转换为对象非常简单(即x <-7)。我如何为整个列做到这一点?到目前为止我的流程:
答案 0 :(得分:1)
示例,假设您要使用的列是第二个
dat2 <- data[ , 2 ]
但我认为设置data = <your_data>
函数的lm
参数并仅使用列的名称会更方便。
以下是iris
数据集的示例。
reg <- lm(Sepal.Length ~ Sepal.Width, data = iris)
正如您所看到的,您只需使用自{/ 1}} R必须搜索的指定列的名称。
使用data =
查看回归摘要。
答案 1 :(得分:1)
简单线性回归的代码只是lm(y~x1 + x2 +等)。在R中,这些变量有两个位置:它们只是在全局环境中(它们在数据中的“值”标题下按名称显示),或者它们是某些数据帧的子集。如果它们是数据帧的子集,要调用它们,您需要编写dataframe$varname
,而不仅仅是varname
。因此,您的线性模型必须是lm(df$y ~ df$x1 + df$x2)
,或者lm(y ~ x1 + x2, data = df)
。这有帮助吗?
答案 2 :(得分:0)
使用以下内容读取数据后
MyData <- read.csv("test.csv", header=TRUE, sep=",")
您可以通过标题名称(每列的顶部条目)调用列来查看列。
离。
MyData[1]
使它们成为对象:
object1=MyData[1]
使其成为子列表。使它成为一个矢量:
vector1=MyData[,1]