Напишите шаблон после значений кадра данных, которые соответствуют определенному условию в другом кадре данных - PullRequest
0 голосов
/ 09 ноября 2018

Я получаю два кадра данных с одинаковым количеством строк и столбцов. Я хотел бы создать третий, в котором я помещу все значения второго кадра данных (df2) и шаблона (*) после этих значений, если значения в той же позиции в первом кадре данных (df1) меньше 0,050.

Ниже сценария двух кадров данных, за которым следует ожидаемый кадр данных в изображении. Я не нашел никаких средств для этого, кроме как вручную. Спасибо за вашу помощь!

set.seed(123)
df1=matrix(data = rnorm(12, .06, .03), nrow = 4, ncol = 3); colnames(df1)=c("a", "b","c")
set.seed(123)
df2=matrix(data = rnorm(12, .5, .1), nrow = 4, ncol = 3); colnames(df2)=c("a", "b","c")

ожидаемое изображение кадра

1 Ответ

0 голосов
/ 09 ноября 2018

Мы можем создать логическую матрицу, основанную на 'df1', присвоить значения в 'df3', которые соответствуют логическому индексу, paste с помощью '*' в конце

df3 <- df2
i1 <- df1 < 0.05
df3[i1] <- paste(df3[i1], "*")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...