R 在循环中连接字符串以生成一个字符串

R 在循环中连接字符串以生成一个字符串,r,string,concatenation,R,String,Concatenation,我必须建立一个线性回归模型的公式(使用glm()函数),在这里我有太多的变量要尝试。我在做基因表达分析。 因此,我要寻找的是一种将所有这些变量串联在一个字符串中的方法(在本例中,变量将是我的data.frame的列名),这样就可以实现公式 我的数据如下所示(实际数据帧有213列): 其中第一列(“Smoke”)是我的特征变量,其余(基因名称)是基因表达水平 我想建立这样的东西: glm(Smoke ~ PRR22 + C15orf40 + RAX2 + GIMAP1... and so fort

我必须建立一个线性回归模型的公式(使用glm()函数),在这里我有太多的变量要尝试。我在做基因表达分析。 因此,我要寻找的是一种将所有这些变量串联在一个字符串中的方法(在本例中,变量将是我的data.frame的列名),这样就可以实现公式

我的数据如下所示(实际数据帧有213列):

其中第一列(“Smoke”)是我的特征变量,其余(基因名称)是基因表达水平

我想建立这样的东西:

glm(Smoke ~ PRR22 + C15orf40 + RAX2 + GIMAP1... and so forth
我的问题是:我如何以一种我所有变量都在那里的方式自动化它

也许将列名连接在一个字符串中可以解决这个问题?例如:

for (i in colnames(df)[-1]){
    form <- as.formula(paste0("Smoke ~ ", i))
    glm(form, data=df)
    }
for(i在colnames(df)[-1]中){

表单可能我搞错了,但你不是在找
~。
,不是吗?你能给出一个更具体的例子吗?你在
表单中缺少了一个括号哦,对不起,尼尔森。我一开始没明白。是的,它是“烟”反对所有其他预测。非常感谢!我将尝试你的观点。我敦促大家避免使用字符串连接来构建公式的诱惑。R有一个丰富的系统,可以直接处理未赋值的表达式,通过字符串绕道是完全不必要的,而且在概念上是令人讨厌的。首先,看看
bquote
替换
函数。也许我弄错了,但你不是在找
~。
,不是吗?你能举个更具体的例子吗?你在
表单中缺少了一个括号哦,对不起,尼尔森。我一开始没明白。是的,它是“冒烟”反对所有其他预测。非常感谢!我将尝试你的观点。我敦促大家避免使用字符串连接来构建公式的诱惑。R有一个丰富的系统,可以直接处理未赋值的表达式,通过字符串绕道是完全不必要的,而且在概念上是令人讨厌的。首先,看看
bquote
替换功能。
for (i in colnames(df)[-1]){
    form <- as.formula(paste0("Smoke ~ ", i))
    glm(form, data=df)
    }