R で 3 元テーブルを作成する方法 (例付き)


三変量テーブルは、 3 つのカテゴリ変数の度数を表示するテーブルの一種です。

R で 3 つのエントリのテーブルを作成する最も簡単な方法は、 xtabs()関数を使用することです。

 three_way <- xtabs(~var1 + var2 + var3, data=df)

3 方向配列をよりコンパクトに表示したい場合は、 ftable()関数を使用できます。

 three_way_ftable <- ftable(three_way)

: xtabs()関数とftable()関数は R データベースに統合されています。

次の例は、実際にこれらの関数を使用して R で 3 元テーブルを作成する方法を示しています。

例: R で三元テーブルを作成する方法

さまざまなバスケットボール選手に関する情報を含む次のデータ フレームがあるとします。

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B'),
                 position=c('G', 'G', 'G', 'F', 'F', 'G', 'G', 'F', 'F', 'F'),
                 starter=c('Yes', 'No', 'No', 'Yes', 'No',
                           'Yes', 'No', 'Yes', 'Yes', 'No'),
                 points=c(30, 28, 24, 24, 28, 14, 16, 20, 34, 29))

#view data frame
df

   team position starter points
1 AG Yes 30
2 AG No. 28
3 AG No. 24
4 AF Yes 24
5 AF No. 28
6 BG Yes 14
7 BG No. 16
8 BF Yes 20
9 BF Yes 34
10 BF No. 29

3 つの変数 ( teamposition 、およびstarter )に基づいてプレーヤーの頻度を表示する 3 元テーブルを作成するとします。

xtabs()関数を使用して、この 3 方向配列を作成できます。

 #create three-way table
three_way <- xtabs(~ team + position + starter, data=df)

#view three-way table
three_way

, , starter = No

    position
team FG
   AT 12
   B 1 1

, , starter = Yes

    position
team FG
   At 1 1
   B 2 1

結果の最初の表は、開始変数が No. に等しいプレイヤーのチーム別およびポジション別の頻度を示しています。

2 番目の表は、開始変数が「はい」に等しいプレーヤーのチーム別およびポジション別の頻度を示しています。

必要に応じて、 ftable()関数を使用して、これらの配列を単一の配列に「平坦化」できます。

 #convert table to ftable
three_way_ftable <- ftable(three_way)

#view ftable
three_way_fttable

              starter No Yes
team position               
AF 1 1
     G 2 1
BF 1 2
     G 1 1

結果として得られる 3 変数テーブルには、3 つの変数の度数が「フラット」形式で表示されます。

たとえば、次のことがわかります。

  • チームA、ポジションFに所属し、スターターではなかった選手が1名いました。
  • チームA、ポジションFのスターター選手が1名いました。
  • チームA、ポジションGに所属し、スターターではなかった選手が2名いました。

等々。

追加リソース

次のチュートリアルでは、R で他の一般的なタスクを実行する方法について説明します。

Rで双方向テーブルを作成する方法
Rでグループごとの度数表を作成する方法
R でテーブルをプロットする方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です