当重塑不能猜出时变变量的名称时,重塑r中的数据 [英] reshape data in r when reshape cannot guess the names of the time varying variables

查看:8
本文介绍了当重塑不能猜出时变变量的名称时,重塑r中的数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个宽形式的数据集,其中有1500多列。由于许多变量都是重复的,所以我想重塑成长形。但是,r抛出错误:

Error in guess(varying) : 
  Failed to guess time-varying variables from their names

试着用一个玩具例子来理解这一点,我发现

u<-data.frame(id=1:100,f.1=rnorm(100),u.1=rnorm(100),i.1=rnorm(100),f.2=rnorm(100),u.2=rnorm(100),i.2=rnorm(100),
                  f.3=rnorm(100),u.3=rnorm(100),i.3=rnorm(100))

reshape(u,varying=2:10,direction="long")

工作正常。然而,我的数据看起来更像:

u<-data.frame(id=1:100,f1=rnorm(100),u1=rnorm(100),i1=rnorm(100),f2=rnorm(100),u2=rnorm(100),i2=rnorm(100),
              f3=rnorm(100),u3=rnorm(100),i3=rnorm(100))

reshape(u,varying=2:10,direction="long")

这就是我迷路的地方。除了更改变量名(这很累人)之外,我还有什么聪明的主意吗?

推荐答案

添加v.names参数:

reshape(u,varying=2:10,direction="long", v.names=c("f", "u", "i"))
    id time          f          u             i
1.1  1    1  1.7821678  0.5144692  0.0006889928
2.1  2    1 -0.5036801  1.8242030  0.9695553817
3.1  3    1  1.1857706  0.6469423  0.6775602175
4.1  4    1 -0.5759202 -1.0349980  0.7183451146
5.1  5    1 -2.3559773  0.8598020  0.5506339475
6.1  6    1 -0.8047651 -1.4768172 -0.3667918383
...

这篇关于当重塑不能猜出时变变量的名称时,重塑r中的数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆