【问题标题】:R reshape packageR重塑包
【发布时间】:2014-01-22 23:30:12
【问题描述】:

我正在尝试使用 R 的“reshape”包来更改我拥有的数据框,粘贴在下面。基本上,我想创建一个新的数据框,它将变量 V2 和 V3 连接到列中,用于 V2 和 V3 的所有可能组合,行作为日期。我尝试使用 reshape 的 cast 函数,但是我无法让 Date 出现在行中。这些变量按照我的意愿连接在列名中,但不包括日期。

这是数据框标准:

V2      V3   V5       Date
AUS     CR   15344    2000-01-01
ALI     NG   3952     2000-01-01
EUR     CR   19296    2000-01-01
AUS     MO   5826     2000-01-01  

当我应用 cast(std,Date~V2~V3,value="V5") 时,我获得了一个如下所示的框架,但是我也无法让 Date 列也显示出来。我在铸造和熔化方面做了很多试验和错误,但无济于事。任何建议将不胜感激

AUS.CR  ALI.NG  EUR.CR
15344   3952    19296
20108   4000    18568

【问题讨论】:

    标签: r reshape


    【解决方案1】:

    您可以使用包reshape(函数cast)或reshape2dcast

    x <- read.table(header=T,text='V2      V3   V5       Date
    AUS     CR   15344    2000-01-01
    ALI     NG   3952     2000-01-01
    EUR     CR   19296    2000-01-01
    AUS     MO   5826     2000-01-01')
    

    使用reshapecast

    library(reshape)
    cast(x, Date ~ V2 + V3, value='V5')
    #         Date ALI_NG AUS_CR AUS_MO EUR_CR
    # 1 2000-01-01   3952  15344   5826  19296
    

    使用reshape2dcast(结果相同)

    library(reshape2)
    dcast(x, Date ~ V2 + V3, value.var='V5')
    

    【讨论】:

      猜你喜欢
      • 2012-04-20
      • 2015-04-18
      • 1970-01-01
      • 2014-03-10
      • 2017-11-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多