3
WHIS此数据帧,重塑与缺失值
df <- expand.grid(id="01", parameter=c("blood", "saliva"), visit=c("V1", "V2", "V3"))
df$value <- c(1:6)
df$sex <- rep("f", 6)
df
> df
id parameter visit value sex
1 01 blood V1 1 f
2 01 saliva V1 2 f
3 01 blood V2 3 f
4 01 saliva V2 4 f
5 01 blood V3 5 f
6 01 saliva V3 6 f
当我在“宽”格式重塑它,我得到与两个基reshape
功能和dcast
函数相同的结果来自reshape2
。
reshape(df,
timevar="visit",
idvar=c("id", "parameter", "sex"),
direction="wide")
id parameter sex value.V1 value.V2 value.V3
1 01 blood f 1 3 5
2 01 saliva f 2 4 6
library(reshape2)
dcast(df,
id+parameter+sex~visit,
value.var="value")
id parameter sex V1 V2 V3
1 01 blood f 1 3 5
2 01 saliva f 2 4 6
但如果我增加一些缺失值,结果不同
df$value <- c(1,2,NA,NA,NA,NA)
df$sex <- c(NA,NA,NA,NA,NA,NA)
df
> df
id parameter visit value sex
1 01 blood V1 1 NA
2 01 saliva V1 2 NA
3 01 blood V2 NA NA
4 01 saliva V2 NA NA
5 01 blood V3 NA NA
6 01 saliva V3 NA NA
含底座reshape
,我只得到一个行
reshape(df,
timevar="visit",
idvar=c("id", "parameter", "sex"),
direction="wide")
id parameter sex value.V1 value.V2 value.V3
1 01 blood NA 1 NA NA
随着dcast
,我得到两排
dcast(df,
id+parameter+sex~visit,
value.var="value")
id parameter sex V1 V2 V3
1 01 blood NA 1 NA NA
2 01 saliva NA 2 NA NA
有没有办法来处理基地reshape
函数中的这些缺失值,因为我想用这个?
从帮助页面进行处理,这不是显而易见的是如何'reshape'处理丢失的值。 – akrun
但是,非'NA'值'2'在哪里? – jogo
这就是要点。我想知道它在哪里! – user3631369