Как получить последний элемент строк в столбце в R?

#r #string #dataframe #data-cleaning

#r #строка #фрейм данных #очистка данных

Вопрос:

У меня есть столбец dataframe следующим образом:

 name_col
"Anna"
"c("Anna", n"Billy", n"Fanny")"
"c("Tom", "Tim"n)"
"Minnie"
  

Я хотел бы получить последнюю строку для каждой строки в столбце выше,
что-то вроде этого:

  name_col
 "Anna"
 "Fanny"
 "Tim"
 "Minnie"
  

Dput(head(name_col, 4)) выглядит следующим образом:

 c("Anna","c("Anna", "Billy", "Fanny")" ,"c("Tom", "Tim")","Minnie")
  

Пожалуйста, дайте мне знать, можно ли это сделать в столбце dataframe в R. Спасибо

Комментарии:

1. Пожалуйста, поделитесь выводом dput(head(name_col, 4)) в конце вашего вопроса.

Ответ №1:

Используя фрейм d данных, воспроизводимый в примечании в конце, используйте эту замену:

 transform(d, name_col = sub('.*"(.*)".*', "\1", name_col))
  

предоставление:

   name_col
1     Anna
2    Fanny
3      Tim
4   Minnie
  

Примечание

Воспроизводимый кадр входных данных:

 d <- data.frame(name_col = 
  c("Anna",
  "c("Anna", n"Billy", n"Fanny")",
  "c("Tom", "Tim"n)",
  "Minnie"), stringsAsFactors = FALSE)