2018-11-05
閱讀量:
834
關(guān)于gather函數(shù)應(yīng)用的問題
原來的數(shù)據(jù)格式

希望的數(shù)據(jù)格式

請問如何用gather函數(shù)進行寬變長的變換,謝謝
數(shù)據(jù):
structure(list(conc = c(0, 0.05), HMP = c(71.014, 71.5105), hmpSD = c(2.16233,
0.44194), PP = c(71.014, 72.975), PPSD = c(2.16233, 1.20491),
? ? TPP = c(71.014, 72.43), TPPSD = c(2.16233, 1.24305)), .Names = c("conc",
"HMP", "hmpSD", "PP", "PPSD", "TPP", "TPPSD"), row.names = c(NA,
-2L), class = c("tbl_df", "tbl", "data.frame"))
或
"conc" "HMP" "hmpSD" "PP" "PPSD" "TPP" "TPPSD"
0 71.014 2.16233 71.014 2.16233 71.014 2.16233
0.05 71.5105 0.44194 72.975 1.20491 72.43 1.24305
library(dplyr)
library(tidyr)
library(stringr)
data <- structure(list(conc = c(0, 0.05), HMP = c(71.014, 71.5105), hmpSD = c(2.16233,
0.44194), PP = c(71.014, 72.975), PPSD = c(2.16233, 1.20491),
? ? TPP = c(71.014, 72.43), TPPSD = c(2.16233, 1.24305)), .Names = c("conc",
"HMP", "hmpSD", "PP", "PPSD", "TPP", "TPPSD"), row.names = c(NA,
-2L), class = c("tbl_df", "tbl", "data.frame"))
gather(data, key = type, value = hard, HMP, PP, TPP) %>%
gather(key = type2, value = sd, hmpSD, PPSD, TPPSD) %>%
filter(str_to_upper(type2) %>% gsub('SD','',.)==type) %>%
.[,c('conc','type','hard','sd')]






評論(0)


暫無數(shù)據(jù)
推薦帖子
0條評論
0條評論
0條評論