【问题标题】:Combine all columns of a data.frame in a single one (vector concatenation)将 data.frame 的所有列合并为一个(向量连接)
【发布时间】:2018-12-07 21:09:22
【问题描述】:

我想转换这个data.frame

C1  C2  C3  C4
q   t   p   k   
g   l   i   y
f   d   t   r

到具有 单列 的 data.frame,其中元素的顺序为 q,t,p,k,g,l,i,y,f,d,t,r。请注意,它不是列的串联。

结果:

C1
q
t
p
k
l
i
y
f
d
t
r

【问题讨论】:

    标签: r dataframe combinations multiple-columns


    【解决方案1】:

    我们可以将data.frame 转置为matrix,连接以将其转换为vector 并创建单个列data.frame

    data.frame(C1 = c(t(df)))
    #   C1
    #1   q
    #2   t
    #3   p
    #4   k
    #5   g
    #6   l
    #7   i
    #8   y
    #9   f
    #10  d
    #11  t
    #12  r
    

    数据

    df <- structure(list(C1 = c("q", "g", "f"), C2 = c("t", "l", "d"), 
    C3 = c("p", "i", "t"), C4 = c("k", "y", "r")), class = "data.frame", 
     row.names = c(NA, -3L))
    

    【讨论】:

    • 因此,结果是转置矩阵的列的串联。但是您将其串联转换为向量,最后转换为 data.frame。谢谢。
    猜你喜欢
    • 2015-07-25
    • 1970-01-01
    • 1970-01-01
    • 2013-09-26
    • 2011-01-13
    • 1970-01-01
    • 2021-06-30
    • 2021-03-12
    相关资源
    最近更新 更多