複数の data.frames のリストを取得しました。各 data.frames から最初の 2 列を削除したいと考えています。私は次のようにしましたが、これはもっとRっぽいと思います。
data(mtcars)
data(iris)
myList <- list(A = mtcars, B = iris)
# helper function
removeCols <- function(df,vec) {
res <- df[,-vec]
}
lapply(myList,removeCols,1:2)
明らかにこれでうまくいきますが、ここで何かを見逃しているように思えます (lapply 内で演算子を使用するなど、技術的には関数でもあるため)。ただし、このアプローチの主な欠点は、そのリストのすべての要素に対して行う小さなタスクごとに、小さなヘルパー関数が必要になることです。