我有一些列,其中有一些与之关联的值。 我想给每个列(a和b)提供值(1和2),然后将它们放在行中。 这是可以更好地查看转换的代码:
#Create a dataframe, let's day a and b are the name of some brands
df = data.frame(a=c(1,2,3),b=c(4,5,6))
# I want to assign the numbers 1 and 2 to brand a and b
df1 = data.frame(brand=c(1,1,1,2,2,2), value=c(1,2,3,4,5,6))
我需要一个自动执行此功能的函数:将df转换为df1 *
编辑:对于上下文,我正在为Anova测试进行此转换
答案 0 :(得分:0)
如何?
library(tidyr)
library(dplyr)
df <- data.frame(a=c(1,2,3),b=c(4,5,6))
df1 <- gather(df, brand, value) %>% ## Convert columns into rows
mutate(brand = as.numeric(as.factor(brand))) ## Convert a and b into 1 and 2