#string #r #list #comma
#r #строка #Список #разделить
Вопрос:
У меня есть разделенная запятыми строка в R:-
"a,b,c"
Я хочу преобразовать ее в список, который выглядит следующим образом:
list("a","b","c")
Как мне это сделать?
Ответ №1:
Это основная strsplit
проблема:
x <- "a,b,c"
as.list(strsplit(x, ",")[[1]])
# [[1]]
# [1] "a"
#
# [[2]]
# [1] "b"
#
# [[3]]
# [1] "c"
strsplit
создает list
и [[1]]
выбирает первый элемент списка (в данном случае у нас есть только один). На данный момент результатом является обычный вектор символов, но вы хотите, чтобы он был в a list
, поэтому вы можете использовать as.list
для получения нужной формы.
С той же логикой вы можете использовать el
:
as.list(el(strsplit(x, ",")))
# [[1]]
# [1] "a"
#
# [[2]]
# [1] "b"
#
# [[3]]
# [1] "c"
Или scan
:
as.list(scan(text = x, what = "", sep = ","))
# Read 3 items
# [[1]]
# [1] "a"
#
# [[2]]
# [1] "b"
#
# [[3]]
# [1] "c"
Комментарии:
1. Идеальный. Я пробовал strsplit(x,»,»), который выдавал мне список отдельных элементов, который был не тем, что мне было нужно. Мне нужно подождать 9 минут, прежде чем я смогу пометить ваш ответ как принятый.