Как вы перемещаете каждую другую строку в строку перед ней в R? - PullRequest
2 голосов
/ 02 апреля 2020

Я прочитал в списке строк int R и мне нужно взять строку с именем на ней и добавить ее к строке под ней, чтобы она читалась как одна строка.

Текущий вывод:

[1] "Joe Exotic"                  "Tiger King, Lead"            "Carole Baskin"              
[4] "Husband Killer, Tiger Queen" "Doc Antle"                   "Tiger Person, Swinger" 

И мне бы хотелось, чтобы это выглядело следующим образом:

[1] "Joe Exotic, Tiger King, Lead"               "Carole Baskin, Husband Killer, Tiger Queen"
[3] "Doc Antle, Tiger Person, Swinger"  

Решения на тидиверсе были бы идеальными. Спасибо.

Ответы [ 2 ]

1 голос
/ 02 апреля 2020

Поместите вектор в матрицу из 2 строк и примените функцию toString() к каждому столбцу.

apply(matrix(x, 2), 2, toString)

# [1] "Joe Exotic, Tiger King, Lead"              
# [2] "Carole Baskin, Husband Killer, Tiger Queen"
# [3] "Doc Antle, Tiger Person, Swinger" 

Данные

x <- c("Joe Exotic", "Tiger King, Lead", "Carole Baskin", "Husband Killer, Tiger Queen", "Doc Antle", "Tiger Person, Swinger")
0 голосов
/ 02 апреля 2020

Мы можем разбить данные на list, создав индекс группировки с gl, а затем paste

unname(sapply(split(x, as.integer(gl(length(x), 2, length(x)))), toString))

data

x <- c("Joe Exotic", "Tiger King, Lead", "Carole Baskin", 
      "Husband Killer, Tiger Queen", "Doc Antle", "Tiger Person, Swinger")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...