Аналоги распаковать в R - PullRequest
1 голос
/ 22 февраля 2012

Пытаясь выучить немного R после того, как я в основном занимался Хаскеллом, довольно долго, я застрял на проблеме, которую я обычно использовал, используя unzip 1 и map.

Iиметь последовательность строк, каждая из которых содержит две подстроки, разделенные подчеркиванием.Я хочу "распаковать" эту последовательность в нечто вроде кадра данных или матрицы, где первый столбец - это последовательность всех первых подстрок, а второй столбец - последовательность всех вторых подстрок.

Есть лилюбой аналог unzip в R, и будет ли считаться идеологичным использовать его здесь, или я подхожу к этому с совершенно неправильного направления?

[1] Приведен список (или, в более общем случае, любой видпоследовательность) пар unzip создает пару списков очевидным образом.

1 Ответ

3 голосов
/ 22 февраля 2012

Вы на правильном пути.Вы хотите strsplit

vec <- paste(letters,letters[26:1],sep='_')
out <- strsplit(vec,'_')

, вот список ... и sapply получит векторы.

data.frame(one = sapply(out,'[',1), two = sapply(out,'[',2))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...