トップ
新規
一覧
単語検索
最終更新
ヘルプ
ログイン
アールメカブ
R_reshape
をテンプレートにして作成
開始行:
[[Rの備忘録]]
たまたま質問を受けたので.
こういうデータがあるとして
> x <- matrix( c(1920, -47, -67, -13, -60, -89, -34, -29...
-50, 54, 52, 1921, 56, 119, 112, 37, 89, 72, 62, 41, 54,...
70, 1922, 32, 80, 76, 42, -27, 69, 40, -3, 56, 28, 33, 1...
23, 88, 7, 116, -51, -41, -21, -14, 0, -52, -50, 27, 19...
121, 34, 77, 28, 70, 64, 43, 21, 34, 72, 27), nrow = 5,...
> x <- as.data.frame(x)
> colnames(x) <- c( "Year", "JAN","FEB","MAR","APR"," MA...
"JUN","JUL","AUG","SEP","OCT","NOV","...
> x
Year JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC
1 1920 -47 -67 -13 -60 -89 -34 -29 -59 53 -50 54 52
2 1921 56 119 112 37 89 72 62 41 54 26 -49 70
3 1922 32 80 76 42 -27 69 40 -3 56 28 33 123
4 1923 23 88 7 116 -51 -41 -21 -14 0 -52 -50 27
5 1924 -108 121 34 77 28 70 64 43 21 34 72 27
これを縦長に変換する.
> y <- reshape(x, varying = list(names(x)[-1]), idvar = ...
dir = "long", v.names = "x", times = colnames(x)...
> y <- y[order(y$Year), ]
> y
Year time x
1920.JAN 1920 JAN -47
1920.FEB 1920 FEB -67
1920.MAR 1920 MAR -13
1920.APR 1920 APR -60
1920. MAY 1920 MAY -89
1920.JUN 1920 JUN -34
1920.JUL 1920 JUL -29
1920.AUG 1920 AUG -59
1920.SEP 1920 SEP 53
1920.OCT 1920 OCT -50
1920.NOV 1920 NOV 54
1920.DEC 1920 DEC 52
1921.JAN 1921 JAN 56
1921.FEB 1921 FEB 119
1921.MAR 1921 MAR 112
...
...
...
終了行:
[[Rの備忘録]]
たまたま質問を受けたので.
こういうデータがあるとして
> x <- matrix( c(1920, -47, -67, -13, -60, -89, -34, -29...
-50, 54, 52, 1921, 56, 119, 112, 37, 89, 72, 62, 41, 54,...
70, 1922, 32, 80, 76, 42, -27, 69, 40, -3, 56, 28, 33, 1...
23, 88, 7, 116, -51, -41, -21, -14, 0, -52, -50, 27, 19...
121, 34, 77, 28, 70, 64, 43, 21, 34, 72, 27), nrow = 5,...
> x <- as.data.frame(x)
> colnames(x) <- c( "Year", "JAN","FEB","MAR","APR"," MA...
"JUN","JUL","AUG","SEP","OCT","NOV","...
> x
Year JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC
1 1920 -47 -67 -13 -60 -89 -34 -29 -59 53 -50 54 52
2 1921 56 119 112 37 89 72 62 41 54 26 -49 70
3 1922 32 80 76 42 -27 69 40 -3 56 28 33 123
4 1923 23 88 7 116 -51 -41 -21 -14 0 -52 -50 27
5 1924 -108 121 34 77 28 70 64 43 21 34 72 27
これを縦長に変換する.
> y <- reshape(x, varying = list(names(x)[-1]), idvar = ...
dir = "long", v.names = "x", times = colnames(x)...
> y <- y[order(y$Year), ]
> y
Year time x
1920.JAN 1920 JAN -47
1920.FEB 1920 FEB -67
1920.MAR 1920 MAR -13
1920.APR 1920 APR -60
1920. MAY 1920 MAY -89
1920.JUN 1920 JUN -34
1920.JUL 1920 JUL -29
1920.AUG 1920 AUG -59
1920.SEP 1920 SEP 53
1920.OCT 1920 OCT -50
1920.NOV 1920 NOV 54
1920.DEC 1920 DEC 52
1921.JAN 1921 JAN 56
1921.FEB 1921 FEB 119
1921.MAR 1921 MAR 112
...
...
...
ページ名: