Удалить значения в одном фрейме данных на основе ссылки на ячейку в другом фрейме данных - PullRequest
0 голосов
/ 02 июня 2018

Я уверен, что это просто, но не могу найти ответ на это.У меня есть фрейм данных df:

df <- data.frame(replicate(10,sample(0:10,1000,rep=TRUE)))

Затем у меня есть еще один меньший фрейм данных, в котором есть ссылки на ячейки (номера строк и столбцов), относящиеся к конкретным ячейкам в df, которые должны быть пустыми (т.е. NA):

cellRefs <- data.frame(replicate(2,sample(1:10,10,rep=TRUE)))

Как мне заменить все ячейки в df на NA, на которые ссылаются ссылки на строки и столбцы из cellRefs?

Ответы [ 2 ]

0 голосов
/ 02 июня 2018

Мы могли бы преобразовать 'cellRefs' в matrix и использовать в качестве индекса строки / столбца, чтобы присвоить этим элементам в 'df' значение NA

df[as.matrix(cellRefs)] <- NA
0 голосов
/ 02 июня 2018

Возможно, не самый быстрый способ, но он работает с циклом по строкам cellRefs.

for (i in 1:nrow(cellRefs)){
  df[cellRefs[i,1],cellRefs[i,2]] = NA
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...