Как заполнить значение столбца в зависимости от состояния другого столбца? - PullRequest
0 голосов
/ 08 апреля 2020

Я пытаюсь заполнить значение pca.data $ Type с помощью 'DMSO', если 'DMSO' присутствует в столбце pca.data $ sample в R.

pca.data$Type[pca.data$sample %in% "DMSO"]='DMSO'

enter image description here

Ответы [ 2 ]

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

Несколько способов сделать это. В дополнение к уже предложенному базовому методу R можно использовать data.table или dplyr

data.table

Использовать условную замену на := (обновление по ссылке)

dt <- data.table::as.data.table(pca.data)
dt[grepl("DMSO", get('sample')), Type := "DMSO"]

Приведенный выше фрагмент выполняет назначение. Если вы хотите визуализировать вывод: dt[]

dplyr

Вы можете использовать dplyr::if_else в этом случае

pca.data %>% dplyr::mutate(Type = if_else(grepl("DMSO", sample), 'DMSO', sample)
1 голос
/ 08 апреля 2020
pca.data$Type[grep("DMSO", pca.data$sample)] = "DMSO"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...