мутирование кадра данных с использованием значений из другого кадра данных в качестве имен переменных в R - PullRequest
1 голос
/ 12 апреля 2020

Я хочу провести l oop через строки в ar dataframe (df1) и создать столбцы на основе значений переменных (v1) в каждой строке. V1 - это имя столбца в кадре данных df1. Что я хочу сделать, это добавить столбец с именем V1 на df2. Переменная v1 имеет тип данных <date>, и все значения будут датами.

Это то, что я пробовал

  for(row in 1:nrow(df1)){
    df2 %>%
      mutate(row$v1 == "value")
  }

Ответы [ 3 ]

1 голос
/ 12 апреля 2020

Вы можете сделать это напрямую, не используя al oop:

df2[as.character(df1$v1)] <- 'value'
1 голос
/ 12 апреля 2020

Мы также можем использовать

library(dplyr)
df2 %>%
   mutate_at(vars(as.character(df1$v1)), 'value')
1 голос
/ 12 апреля 2020

Вот мой ответ

for(row in 1:nrow(df1)){
  colname <- df1[row, "v1"]
  df2[,colname] <- "value"
}
...