A: すべての列で pivot_longer() を使用する方法
R のTidyrパッケージのpivot_longer()関数を使用すると、データ ブロックをワイド フォーマットからロング フォーマットに回転できます。
この関数を使用してデータ フレーム内のすべての列を長い形式で回転する場合は、次の構文を使用できます。
library (tidyr)
df_long <- pivot_longer(df, cols = everything())
Cols引数は回転する列を指定し、 everything()は各列を回転することを指定することに注意してください。
次の例は、この関数を実際に使用する方法を示しています。
例: R のすべての列で pivot_longer() を使用します。
R に、3 つの異なる試合で異なるバスケットボール選手が獲得したポイント数を示す次のデータ フレームがあるとします。
#create data frame
df <- data. frame (game1=c(20, 30, 33, 19, 22, 24),
game2=c(12, 15, 19, 19, 20, 14),
game3=c(22, 29, 18, 12, 10, 11))
#view data frame
df
game1 game2 game3
1 20 12 22
2 30 15 29
3 33 19 18
4 19 19 12
5 22 20 10
6 24 14 11
現在、データ フレームはワイド フォーマットです。
ただし、3 つの列すべてを回転させて、データ フレームを長い形式に回転させたいとします。
これを行うには、次の構文を使用できます。
library (tidyr)
#pivot all columns into long data frame
df_long <- pivot_longer(df, cols = everything())
#view long data frame
df_long
# A tibble: 18 x 2
name value
1 game1 20
2 game2 12
3 game3 22
4 game1 30
5 game2 15
6 game3 29
7 game1 33
8 game2 19
9 game3 18
10 game1 19
11 game2 19
12 game3 12
13 game1 22
14 game2 20
15 game3 10
16 game1 24
17 game2 14
18 game3 11
列名game1 、 game2 、およびgame3が「name」という新しい列の値として使用され、それらの元の列の値が「value」という新しい列に配置されることに注意してください。
最終的には長いデータ フレームが生成されます。
注: pivot_longer()関数の完全なドキュメントはここで見つけることができます。
追加リソース
次のチュートリアルでは、R で Tidyr パッケージの他の一般的な関数を使用する方法を説明します。
R で pivot_wider() を使用する方法
RでSpread関数を使用する方法
Rでcollect関数を使用する方法
Rで別の関数を使用する方法
RのUnite関数の使い方