Обновлять / объединять строки данных только со значениями, отличными от NA, в R - PullRequest
0 голосов
/ 02 мая 2019

Допустим, у меня есть эти фреймы данных:

original = data.frame(id = 1, paramA = 12, paramB=30)
update = data.frame(id=1 , paramA = NA , paramB = 22)

Как мне создать этот фрейм данных:

result_df = data.frame(id = 1, paramA = 12, paramB=22)

По сути, фрейм данных обновления должен обновлять originalфрейм данных, но только на столбцах, которые не NA.Вот почему paramA осталось 12 и только paramB было обновлено до 22 из 30. Фреймы данных всегда будут иметь только 1 строку.Я пытался найти похожие вопросы, но не нашел ничего подходящего для этого.

1 Ответ

1 голос
/ 02 мая 2019

Мы могли бы обновить original в не-NA местах с update как

original[!is.na(update)] <- update[!is.na(update)] 

original
#  id paramA paramB
#1  1     12     22
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...