在R中重塑数据框

Pro*_*ion -1 r reshape dataframe

我试图在网站上寻找解决方案,但重塑数据仍然困扰着我.我希望有人可以帮忙!:)基本上,我的数据看起来像这样:

Item Condition1 Condition2 Condition3
A    1          2          3
B    1          2          3
C    1          2          3
D    1          2          3
Run Code Online (Sandbox Code Playgroud)

我希望它看起来像这样

Item Condition
A    1
A    2
A    3
B    1
B    2
B    3
C    1
C    2
C    3
D    1
D    2
D    3
Run Code Online (Sandbox Code Playgroud)

根据我的理解,似乎有可能以不止一种方式做到这一点,但我还没有找到一个有效的方法!

A5C*_*2T1 6

是.在R中有几种方法可以做到这一点.这里有几个.

获得您在问题中指定的订单的选项

library(data.table)
as.data.table(mydf)[, list(Condition = unlist(.SD)), by = Item]
Run Code Online (Sandbox Code Playgroud)
library(splitstackshape)
merged.stack(mydf, var.stubs = "Condition", 
             sep = "var.stubs")[, .time_1 := NULL][]
Run Code Online (Sandbox Code Playgroud)
data.frame(Item = rep(mydf[[1]], 
                      each = ncol(mydf[-1])), 
           Condition = c(t(mydf[-1])))
Run Code Online (Sandbox Code Playgroud)

需要一个步骤来删除列或重新排序行的选项

reshape(mydf, direction = "long", idvar = "Item",
        varying = 2:ncol(mydf), sep = "")
Run Code Online (Sandbox Code Playgroud)
cbind(mydf[1], stack(mydf[-1]))
Run Code Online (Sandbox Code Playgroud)
library(tidyr)
gather(mydf, var, val, Condition1:Condition3)
Run Code Online (Sandbox Code Playgroud)