R 中的数据整理问题

Issues with data wrangling in R

我对 700 名参与者进行了在线实验,并在单独的 csv 文件中获取了每个参与者的数据。

我的第一步是只导入一个文件,并尝试以最佳方式整理它以供进一步分析。下一步是将其应用于所有 700 个 csv 文件,然后将所有内容合并在一起。这或多或少是正确的方法吗?

我是 R 的新手,卡在争论的部分。第一张照片是我目前得到的(当前)。第二张照片是我想去的地方(目标)。

current

goal

  1. 是否可以将所有数据移动到每列的顶部,数据上方没有空 cells/NA?
  2. 在RT_first_letter列中:是否可以只获取第6行的第一个条目(在当前图片中)。在这种情况下 2.949...?

提前感谢您的帮助!

可能不是最快的方法,但(恕我直言)易于遵循

#install.packages("qpcR")
library(qpcR)
# Sample data
mydata <- data.frame(col1 = c(NA, 1, 2, NA, 3),
                     col2 = c(NA, NA, NA, NA, 6),
                     col3 = c(1, 2, NA, NA, NA))

#Split to individual columns, drop NA values
L <- lapply(
  split.default(mydata, f = names(mydata)),
  function(x) x[!is.na(x)]
)
# $col1
# [1] 1 2 3
# 
# $col2
# [1] 6
# 
# $col3
# [1] 1 2

final <- as.data.frame(Reduce(qpcR:::cbind.na, L))  #note the three dots!!
names(final) <- names(L)

#   col1 col2 col3
# 1    1    6    1
# 2    2   NA    2
# 3    3   NA   NA