gpt4 book ai didi

从长到宽 reshape 数据,在新的宽变量名称中包含时间

转载 作者:行者123 更新时间:2023-12-04 16:26:32 27 4
gpt4 key购买 nike

我有一个数据框,我想从长格式合并到宽格式,但我希望将时间嵌入到宽格式的变量名称中。下面是一个长格式的示例数据集:

id <- as.numeric(rep(1,16))
time <- rep(c(5,10,15,20), 4)
varname <- c(rep("var1",4), rep("var2", 4), rep("var3", 4), rep("var4", 4))
value <- rnorm(16)
tmpdata <- as.data.frame(cbind(id, time, varname, value))

> tmpdata
id time varname value
1 5 var1 0.713888426169224
1 10 var1 1.71483653545922
1 15 var1 -1.51992072577836
1 20 var1 0.556992407683219
....
4 20 var4 1.03752019932467

我希望以宽格式显示以下输出:
id var1.5 var1.10 var1.15 var1.20 ....
1 0.71 1.71 -1.51 0.55

(and so on)

我已经尝试在基础 R 中使用 reshape 函数但没有成功,我不确定如何使用 reshape 包来实现这一点,因为所有示例都将时间作为宽格式中的另一个变量。有任何想法吗?

最佳答案

这对于 reshape 包来说是微不足道的:

library(reshape)
cast(tmpdata, ... ~ varname + time)

关于从长到宽 reshape 数据,在新的宽变量名称中包含时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3320515/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com