2016-12-27 3 views
-1

Я хочу добавить столбцы, которые сейчас находятся рядом друг с другом, так что у меня есть только один, очень длинный столбец в конце.Добавить столбцы друг в друга (не комбинировать!)

Поскольку у меня есть 150 столбцов для объединения в одну длинную колонку, эффективное решение будет отличным.

Краткий пример:

Что это выглядит сейчас:

A B C 
A B C 
A B C 

Как я хочу, чтобы это выглядело как:

A 
A 
A 
B 
B 
B 
C 
C 
C 
+1

Вы должны объяснить немного лучше, что вы пытаетесь достичь ... Вы хотите изменить свою базу данных? Просто получите отчет? –

+0

Если вы начинаете с матрицы, вы можете использовать 'myVec <- c (myMat)'. – lmo

ответ

2

unlist делает то, что вы хотите.

Data = read.table(text="A B C 
A B C 
A B C") 
Data 
    V1 V2 V3 
1 A B C 
2 A B C 
3 A B C 
unlist(Data) 
V11 V12 V13 V21 V22 V23 V31 V32 V33 
    A A A B B B C C C 
+0

unlist сам по себе не будет создавать столбец. –

+1

'data.frame (unlist (Data))' если вам нравится :-) – G5W

0

Предполагая, что вы начинаете с кадра данных:

dd <- data.frame(V1=rep("A",3),V2=rep("B",3),V3=rep("C",3)) 

Включите его в матрицу, а затем раздеться размеры:

c(as.matrix(dd)) 

Вы можете превратить его обратно в 1 -колоночную матрицу с matrix() или cbind() или обратно в 1-колонную рамку данных с data.frame()

0

Мы можем использовать gather/select

library(dplyr) 
library(tidyr) 
gather(dd) %>% 
     select(value) 
Смежные вопросы