簡體   English   中英

使用 function 參數並將其傳遞給 lm 公式

[英]Using a function parameter and passing it in to lm formula

我正在嘗試創建一個 function 將參數作為因變量傳遞,而自變量保持不變。

我曾嘗試使用 {{}} 但如果 select 包含可能,則將問題視為如下所示。

test_func <- function(dataframe, dependent){
  model <- tidy(lm({{ dependent }} ~ . - select(contains("x")), data = dataframe))

  return(model)
}

test_func(datasets::anscombe, x1)

function 應作為帶有單個 model 的函數(數據幀,依賴)傳遞。

使用reformulate()

f <- function(d, y) lm(reformulate(names(d)[grep("x", names(d))], response=y), data=d)

f(datasets::anscombe, "y1")
# Call:
#   lm(formula = reformulate(names(d)[grep("x", names(d))], response = y), 
#      data = d)
# 
# Coefficients:
#   (Intercept)           x1           x2           x3           x4  
#       4.33291      0.45073           NA           NA     -0.09873  

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM