【发布时间】:2021-10-20 11:16:34
【问题描述】:
我正在将凌乱的 Excel 工作表转换为可用数据。基本结构是重复的变量块,行中具有相似的项目。我想移动列,使它们成为第一个列块的行。
很难描述所以这里是mwe。
d1 = structure(list(...1 = c("p", "w", "s", NA, "A Ex", NA, "Pres",
"Time", "HR"), ...2 = c("1", "1", "1", NA, "Walk", NA, NA, NA,
NA), ...3 = c(NA, NA, NA, NA, NA, NA, "Done", "Time", "HR"),
...4 = c(NA, NA, NA, NA, NA, NA, NA, NA, NA), ...5 = c("p",
"w", "s", NA, "A Ex", NA, "Pres", "Time", "HR"), ...6 = c("1",
"1", "2", NA, "Walk", NA, NA, NA, NA), ...7 = c(NA, NA, NA,
NA, NA, NA, "Done", "Time", "HR"), ...8 = c(NA, NA, NA, NA,
NA, NA, NA, NA, NA), ...9 = c("p", "w", "s", NA, "A Ex",
NA, "Pres", "Time", "HR"), ...10 = c("1", "1", "3", NA, "Walk",
NA, NA, NA, NA), ...11 = c(NA, NA, NA, NA, NA, NA, "Done",
"Time", "HR"), ...12 = c(NA, NA, NA, NA, NA, NA, NA, NA,
NA)), row.names = c(NA, -9L), class = c("tbl_df", "tbl",
"data.frame"))
我想移动 5:8 和 6:12 列,使它们成为 1:4 的附加行,因此结果是:
df2 = structure(list(...1 = c("p", "w", "s", NA, "A Ex", NA, "Pres",
"Time", "HR", "p", "w", "s", NA, "A Ex", NA, "Pres", "Time",
"HR", "p", "w", "s", NA, "A Ex", NA, "Pres", "Time", "HR"), ...2 = c("1",
"1", "1", NA, "Walk", NA, NA, NA, NA, "1", "1", "2", NA, "Walk",
NA, NA, NA, NA, "1", "1", "3", NA, "Walk", NA, NA, NA, NA), ...3 = c(NA,
NA, NA, NA, NA, NA, "Done", "Time", "HR", NA, NA, NA, NA, NA,
NA, "Done", "Time", "HR", NA, NA, NA, NA, NA, NA, "Done", "Time",
"HR"), ...4 = c(NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA)), row.names = c(NA,
-27L), class = c("tbl_df", "tbl", "data.frame"))
【问题讨论】:
标签: r row columnsorting