Во фрейме данных я хочу извлечь из строки только числа внутри строки. Я уже сделал это хорошо.
Теперь я хочу объединить или str_c эти вектора внутри каждой строки в отдельные строки.
library(dplyr)
library(stringr)
id <- c(1, 2, 3, 4)
txt <- c("A 9 out of 10", "no numbers", "just 1 number", "2 numbers 33")
right <- c("9 10", "NULL", "1", "2 33")
df <- data.frame(id, txt, right)
df <- df %>% mutate(
Numbers_Title = str_extract_all(txt, "\\b[0-9]+\\b"))
Пока все хорошо, теперь мне нужно преобразовать несколько строк в каждой строке всего в 1 строку в строке. Это часть, которая не работает для меня
df1 <- df %>% mutate(
Numbers_String = str_c(Numbers_Title))
df1 <- df %>% unlist(Numbers_Title)
Спасибо!
Это было помечено как дубликат, но это было не так.
Спасибо, но это не дубликат. В другом случае они хотели разделить строку и сделать более аккуратный фрейм данных. В моем случае я хочу превратить каждый вектор строк внутри ячейки во фрейме данных в одну строку.
Основываясь на ответе akrun, я смог его решить.
Вот как я это сделал
df1 <- df %>% rowwise %>% mutate(
Numbers_String = toString(Numbers_Title))
Спасибо еще раз
sapply(str_extract_all(df$txt, '\\d+'), function(x) if(length(x)>0) toString(x) else NA)
- person akrun   schedule 28.01.2016