R で unlist() 関数を使用する方法 (3 つの例)


R のunlist()関数を使用すると、リストをベクトルにすばやく変換できます。

この関数は次の基本構文を使用します。

 unlist(x)

金:

  • x : オブジェクトの名前 R

次の例は、さまざまなシナリオでこの関数を使用する方法を示しています。

例 1: unlist() を使用してリストをベクトルに変換する

R に次のリストがあるとします。

 #create list
my_list <- list(A = c(1, 2, 3),
                B = c(4, 5),
                C = 6)

#display list
my_list

$A
[1] 1 2 3

$B
[1] 4 5

$C
[1] 6

次のコードは、 unlist()関数を使用してリストをベクトルに変換する方法を示しています。

 #convert list to vector
new_vector <- unlist(my_list)

#display vector
new_vector

A1 A2 A3 B1 B2 C 
 1 2 3 4 5 6 

use.names = FALSEを指定すると、ベクトルから名前を削除できることに注意してください。

 #convert list to vector
new_vector <- unlist(my_list, use. names = FALSE )

#display vector
new_vector

[1] 1 2 3 4 5 6

例 2: unlist() を使用してリストを行列に変換する

次のコードは、 unlist()を使用してリストを行列に変換する方法を示しています。

 #create list
my_list <- list(1:3, 4:6, 7:9, 10:12, 13:15)

#convert list to matrix
matrix(unlist(my_list), ncol= 3 , byrow= TRUE )

     [,1] [,2] [,3]
[1,] 1 2 3
[2,] 4 5 6
[3,] 7 8 9
[4,] 10 11 12
[5,] 13 14 15

結果は、5 行 3 列の行列になります。

例 3: unlist() を使用してリスト内の値を並べ替える

R に次のリストがあるとします。

 #create list
some_list <- list(c(4, 3, 7), 2, c(5, 12, 19)) 

#view list
some_list

[[1]]
[1] 4 3 7

[[2]]
[1] 2

[[3]]
[1] 5 12 19

ここで、リスト内の値を並べ替えてみるとします。

 #attempt to sort the values in the list
sort(some_list)

Error in sort.int(x, na.last = na.last, decreasing = decreasing, ...): 
  'x' must be atomic

値を並べ替えるためにリストを最初にベクトルに変換する必要があるため、エラーが発生します。

次のunlist()関数を使用して値を並べ替えることができます。

 #sort values in list
sort(unlist(some_list))

[1] 2 3 4 5 7 12 19

最初にunlist()を使用してリストを数値ベクトルに変換したため、エラーなしで値のリストを正常に並べ替えることができることに注意してください。

追加リソース

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

R で length() 関数を使用する方法
R で cat() 関数を使用する方法
R で substring() 関数を使用する方法

コメントを追加する

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