chenjl1972 发表于 2021-1-2 20:57:47

数据分析时,列的名称字dependent_factor引用的时候怎样把'' 去掉

dependent_factor='BMI'
tested_group = '具体类型'
df = pd.DataFrame(pd.read_excel(r'C:\Users\chenj\Desktop\生物燃料吸烟CT表型.xlsx', ))# 读取表格
data1 = df.loc[:,] # 选择列名为dependent_factor和具体类型的数据
我想写成这样,用dependent_factor
model = ols('dependent_factor~C(具体类型)',data=data1).fit()# 总体方差分析,‘检测变量~C(分类变量)’
但是这样不行,只能写成
model = ols('BMI~C(具体类型)',data=data1).fit()# 总体方差分析,‘检测变量~C(分类变量)’
anova_table = anova_lm(model, typ=2)
print(anova_table)

也就是说要把 depend_factor的引号去了,才能放到函数里使用,请问,应该如何使用呢
多谢,多谢


疾风怪盗 发表于 2021-1-2 21:14:46

model = ols(f'{dependent_factor}~C(具体类型)',data=data1).fit()
这样不行么?

jackz007 发表于 2021-1-2 21:39:28

本帖最后由 jackz007 于 2021-1-2 21:40 编辑

      字符串的表达式放进 eval() 里面就会成为表达式的。
      va , vb ,vc= 10 , 2 , 80
      s = "(va + vc) // vb"
      vd = eval(s)
      print(vd)                                    # vd = 90 // 2 = 45

chenjl1972 发表于 2021-1-2 22:13:36

jackz007 发表于 2021-1-2 21:39
字符串的表达式放进 eval() 里面就会成为表达式的。

多谢了。
页: [1]
查看完整版本: 数据分析时,列的名称字dependent_factor引用的时候怎样把'' 去掉