1

Rの10個の変数で関数を呼び出す必要があります。 、...table()のように個別に呼び出さずに、1回のショットで関数を呼び出す方法はありますか?table(v1)table(v2)table(v10)

4

1 に答える 1

5

変数が data.frame の列として配置されている場合は、次を使用できますlapply

df <- data.frame(aa = rpois(10, 4), bb = rpois(10, 3), c = rpois(10, 7))

tabList <- lapply(df, table)

次に、さまざまなテーブルのリストを取得します。

> tabList
$aa

1 3 4 5 6 7 
2 3 2 1 1 1 

$bb

1 2 3 4 5 
1 2 4 1 2 

$c

 3  4  5  6  7  9 11 12 
 1  1  1  3  1  1  1  1 

編集:

複数の data.frame にわたる変数の場合、それらをリストに入れてからlapply再度使用してみてください。

df2 <- df[sample(rownames(df), 15, replace = TRUE), ]

df3 <- df[sample(rownames(df), 20, replace = TRUE), ]

dfList <- list(df = df, df2 = df2, df3 = df3)

lapply(dfList, function(x) lapply(x, FUN = table))
于 2012-04-09T09:13:09.490 に答える