0

データ フレーム内の受信データを再フォーマットしようとしています。幅広の形式で複数の列に読み込まれているので、長い形式にまとめたいと思います。最近書いた他のコードでは、'melt' を使用してこれを行いましたが、この場合は、測定された変数を複数の列に分割したいと考えています。たとえば、私のデータはおおよそ次のようになります。

Time   X-Mean   X-StdDev   Y-Mean   Y-StdDev
1       value    value      value    value
2       value    value      value    value
3       value    value      value    value
4       value    value      value    value
5       value    value      value    value

理想的には、このデータを次のように再フォーマットしたいと思います。

Time    Axis     Meas    Value
1       X        Mean    value
1       X        StdDev  value
1       Y        Mean    value
1       Y        StdDev  value
2       X        Mean    value
2       X        StdDev  value
2       Y        Mean    value
2       Y        StdDev  value
.....

私が読んだことから、これにはキャストを使用する必要があるように感じますが、構文がどうあるべきかわかりません。私はちょうど今Rを発見しているので、助けていただければ幸いです! ありがとう!

4

2 に答える 2

0

これは古典的な飼料ですbase::reshape

あなたのdata.frameが呼ばれると仮定しますdd

# this will guess at split using `.` as the split
reshape(dd, direction = 'long',varying =2:5 )
         Time   time     X     Y id
1.Mean      1   Mean value value  1
2.Mean      2   Mean value value  2
3.Mean      3   Mean value value  3
4.Mean      4   Mean value value  4
5.Mean      5   Mean value value  5
1.StdDev    1 StdDev value value  1
2.StdDev    2 StdDev value value  2
3.StdDev    3 StdDev value value  3
4.StdDev    4 StdDev value value  4
5.StdDev    5 StdDev value value  5
于 2013-05-08T04:58:36.883 に答える