R中的线性回归,选择列中的某些值

时间:2014-08-13 16:16:43

标签: r lm

如果我有一个数据集,其中一列是列表,我如何运行线性回归,仅包括该列中的特定变量?

Example.Column <- (DrugA1, Drug A2, DrugA2, DrugA3, DrugB1, DrugB2,
                 DrugB3, No.Drug, Drug A2, No.Drug, DrugB3)
VolMeasure <- c("VL.of.region1", "VL.of.region2", "VL.of.region3")

很抱歉这里存在混淆 - 会有一个for循环让lm遍历响应变量的每个VolMeasure - 因此示例中会有3个回归。

Example.lm <- lm(VolMeasure ~ DrugA1|DrugA2|DrugA3, data=dataset)

由此,我还需要弄清楚如何在一个线性回归中为多个变量做这样的事情,例如,如果我添加一个节食变量

Diet.variable<-("Atkins", "Mediterranean", "Caloric Restriction", "None")
Example2.lm<-lm(VolMeasure ~ DrugA1|DrugA2|DrugA3 & Diet.variable=c("Atkins"), data=dataset)

1 个答案:

答案 0 :(得分:0)

您应该尝试制作子集数据集:

    subData <- subset(yourData, 
Example.Column %in% c("DrugA1", "DrugA2", "DrugA3") & Diet.Variable == "Atkins")

    lm( VolMeasure ~ Example.Column + Diet.Variable, data = subData)