2

次のようなデータフレームがあります。

data.frame(name=c("a","a","b","b","c"),
value=c("2011-01-23","2011-01-23","2011-01-23","2011-01-22","2011-01-22"))

name     value
 a        2011-01-23
 a        2011-01-23
 b        2011-01-23
 b        2011-01-22
 c        2011-01-22

私は3つの異なる名前しか持っていません。それを次のように変えたいと思います:

a    b   c   date
2    1   0    2011-01-23
0    1   1    2011-01-22

reshape パッケージを見ましたが、これを解決するのに十分なドキュメントを理解できませんでした。

4

2 に答える 2

3

data.frameあなたがであると仮定し、 fromdatを使用すると:dcast()reshape2

dcast(dat, value ~ name)

#        value a b c
# 1 2011-01-22 0 1 1
# 2 2011-01-23 2 1 0
于 2013-06-12T05:32:49.363 に答える
0

Look at table. t(table(dat)) should do it (if your source object is named "dat"). Wrap the whole statement in as.data.frame.matrix(.) to get a data.frame.

t(table(dat))
#             name
# value        a b c
#   2011-01-22 0 1 1
#   2011-01-23 2 1 0
as.data.frame.matrix(t(table(dat)))
#            a b c
# 2011-01-22 0 1 1
# 2011-01-23 2 1 0
于 2013-06-12T05:36:20.960 に答える