2016-05-06 8 views
1

内のデータを再構築:は集計/例データフレームの場合はR

df <- structure(list(id = 1:18, region = structure(c(1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L), .Label = c("a", 
"b"), class = "factor"), age.cat = structure(c(1L, 1L, 2L, 2L, 
2L, 3L, 3L, 4L, 1L, 1L, 1L, 1L, 2L, 2L, 3L, 4L, 4L, 4L), .Label = c("0-18", 
"19-35", "36-50", "50+"), class = "factor")), .Names = c("id", 
"region", "age.cat"), class = "data.frame", row.names = c(NA, 
-18L)) 

以下に詳細に説明するように、私は、データを再構築したい:

region 0-18 19-35 36-50 50+ 
a  2 3  2  1 
b  4 2  1  3 

私は単純集計やデータを作り直しますか?どんな助けでも大歓迎です。

答えて

2

reshape2の使用:ここ

install.packages('reshape2') 
library(reshape2) 

df1 <- melt(df, measure.vars = 'age.cat') 
df1 <- dcast(df1, region ~ value) 
6

あなただけtableを使用してそれを行うことができます。

table(df$region, df$age.cat) 

    0-18 19-35 36-50 50+ 
    a 2  3  2 1 
    b 4  2  1 3 
+0

のみ(マイナー)の問題が失われる '領域' の列名です。 –

関連する問題