Я применяя эту функцию в список в R.R - передать имя столбца в качестве переменной lapply
tmp<-lapply(mydata,transform, V3 = ifelse(V2 > 20, V3, NA))
Каждый элемент в списке является dataframe с 3 числовых столбцов V1, V2 и V3. Приведенный выше код работает отлично.
Но если я пытаюсь установить столбцы в качестве переменных:
colA<-paste("V",2,sep="")
colB<-paste("V",3,sep="")
, а затем:
tmp<-lapply(mydata,transform, colB = ifelse(colA > 20, colB, NA))
это не работает. Он создает новый столбец с именем «colB» fill с строкой «V3».
Я также попытался с ПОЛУЧАЕТЕ:
tmp<-lapply(mydata,transform, get(colB) = ifelse(get(colA) > 20, get(colB), NA))
Error: unexpected '=' in "tmp<-lapply(mydata,transform, get(colB) ="
Есть ли способ передать переменную с именем столбца в R? Конечная цель состоит в том, что colA и colB передаются в качестве аргументов командной строки при вызове сценария с Rscript, поскольку тот же код может применяться к различным спискам с переменным числом столбцов. Благодаря
Мне действительно нужно хранить все как список ... – PedroA