【问题标题】:Need assistance in reshaping the data在重塑数据方面需要帮助
【发布时间】:2018-01-08 11:48:21
【问题描述】:

我是新来的,也是 R 世界的新手。 我一直在尝试重塑数据,但在通过 dcast、melt、reshape 选项后我无法做到。

我的数据看起来像, original data

TESTCODE BATCHNUMBER BATCHVALUE DATALINEID

测试 1 100 _83281
测试 1 99 _83284
测试 1 100 _83287
测试 1 101 _83290
测试 2 101 _83281
测试 2 95 _83284
测试 2 99 _83287
测试 2 98 _83290
测试 3 99 _83281
测试 3 103 _83284
测试 3 102 _83287
测试 3 100 _83290

它需要转换成这样的东西,

Desired output

TESTCODE DATALINEID BATCH1 BATCH2 BATCH3

 TEST     _83281       100      101       99
 TEST     _83284        99       95      103
 TEST     _83287       100       99      102
 TEST     _83290       101       98      100

我尝试过使用 dcast(TEST,TESTCODE+DATALINEID ~., value.var = "BATCHVALUE") ,输出类似

TESTCODE   DATALINEID  .
 test     _83281      3
 test     _83284      3
 test     _83287      3
 test     _83290      3

还有 dcast(TEST, TESTCODE+BATCHNUMBER ~ DATALINEID +., value.var = "BATCHVALUE")

TESTCODE BATCHNUMBER _83281 _83284 _83287 _83290

 test           1    100     99    100    101
 test           2    101     95     99     98
 test           3     99    103    102    100

期待回复,从而学习新知识。 谢谢。

【问题讨论】:

    标签: r reshape2 melt dcast


    【解决方案1】:

    我找到了答案,

    dcast(data = TEST,formula =TESTCODE+DATALINEID~BATCHNUMBER, value.var="BATCHVALUE")

    想要的输出,

    TESTCODE DATALINEID 1 2 3

    test     _83281    100    101     99
    test     _83284     99     95    103
    test     _83287    100     99    102
    test     _83290    101     98    100
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-02
      • 2021-09-10
      • 2010-12-17
      相关资源
      最近更新 更多