在 R 中转换数据帧的格式

Converting the Format of Data Frame in R

我是 R 的新手,如果能得到您的建议,我将不胜感激。 我可以知道如何覆盖我的数据框吗?

现在我的数据是这样的,它包含对编码为“201”、“202”和“203”的 3 个单词的 3 个测试。

Participant Test    201 202 203
100 Test1   0   0   1
100 Test2   1   1   1
100 Test3   1   0   1
101 Test1   0   0   1
101 Test2   1   0   1
101 Test3   1   1   0

我可以知道如何覆盖下面的数据框(一行一个单词ID,以测试为列)吗?

谢谢。

Participant     Word_ID Test 1  Test 2  Test 3
100 201 0   1   1
100 202 0   1   0
100 203 1   1   1
101 201 0   1   1
101 202 0   0   1
101 203 1   1   0
library(tidyverse)

df <- tibble(Participant = rep(100:101, each=3),
             Test = rep(paste0("Test", 1:3), 2),
             `201` = c(0,1,1,0,1,1),
             `202` = c(0,1,0,0,0,1),
             `203` = c(1,1,1,1,1,0))

df %>% 
  pivot_longer(cols=`201`:`203`, names_to  = "Word_ID") %>% 
  pivot_wider(names_from = Test, values_from=value)

# A tibble: 6 x 5
  Participant Word_ID Test1 Test2 Test3
        <int> <chr>   <dbl> <dbl> <dbl>
1         100 201         0     1     1
2         100 202         0     1     0
3         100 203         1     1     1
4         101 201         0     1     1
5         101 202         0     0     1
6         101 203         1     1     0