Я новичок в R и сдулся от мощности, которую он имеет при быстром управлении данными и возвращении читаемой информации. Пока, однако, я застрял.Поиск по нескольким столбцам информационного кадра
У меня есть большой набор данных, который я импортировал в качестве фрейма данных. Я хотел бы искать по определенным столбцам фрейма данных с помощью regex (grepl
?) И помещать результаты поиска в новый столбец. Я думал, что смогу сделать это с помощью apply
или ddply
, но, похоже, я не могу обойти мои функции вокруг достаточно хорошо, чтобы сделать это.
Вот кадр данных образца ...
df <- structure(list(w = structure(c(3L, 2L, 1L, 3L, 3L), .Label = c("b",
"c", "d"), class = "factor"), x = structure(c(1L, 2L, 1L, 2L,
3L), .Label = c("a", "b", "d"), class = "factor"), y = structure(c(2L,
1L, 1L, 1L, 1L), .Label = c("a", "d"), class = "factor")), .Names = c("w",
"x", "y"), row.names = c(NA, -5L), class = "data.frame")
который возвращает ...
w x y
1 d a d
2 c b a
3 b a a
4 d b a
5 d d a
Я пробовал: search <- apply(df, 2, function(x){grepl("d", x, perl=TRUE)})
(среди прочего), который возвращает:
w x y
[1,] TRUE FALSE TRUE
[2,] FALSE FALSE FALSE
[3,] FALSE FALSE FALSE
[4,] TRUE FALSE FALSE
[5,] TRUE TRUE FALSE
Что я хотел бы иметь в результате ...
w x y z
1 d a d TRUE
2 c b a FALSE
3 b a a FALSE
4 d b a TRUE
5 d d a TRUE
Я понимаю, что это кажется очень тривиальным для тех из вас, кто продвинулся вперед. Заранее благодарим за то, что нашли время, чтобы помочь мне учиться. Кроме того, хотя я ищу ответ на эту конкретную проблему, мне бы хотелось услышать предложения по изучению/чтению, которые помогут мне лучше понять этот тип манипуляций с данными.