purrr::list_rbindで名前付きの0行tibbleをリストに保持する方法
Rで名前付きの0行tibbleをlist_rbindでリストに保持する方法
必要なライブラリのインストール
まず、以下のライブラリをインストールする必要があります。
install.packages("purrr")
library(purrr)
データの準備
ここでは、2つの名前付きの0行tibbleを作成します。
df1 <- tibble(name = "John", age = 30)
df2 <- tibble(name = "Jane", age = 25)
list_rbindを使用したリストの作成
list_rbind
を使用して、2つのtibbleをリストに結合することができます。
list_of_tibbles <- list_rbind(df1, df2)
list_of_tibbles
を調べると、2つのtibbleがリストに結合されていることがわかります。
str(list_of_tibbles)
# List of 2
# [[1]] tibble: 0 x 2
# name age
# <chr> <dbl>
# [[2]] tibble: 0 x 2
# name age
# <chr> <dbl>
名前付きの0行tibbleを保持する
list_rbind
を使用する場合は、names
引数を指定して、出力リストの名前を指定できます。
list_of_tibbles <- list_rbind(df1, df2, names = c("df1", "df2"))
names(list_of_tibbles)
# [1] "df1" "df2"
# ライブラリのインストール
install.packages("purrr")
library(purrr)
# データの準備
df1 <- tibble(name = "John", age = 30)
df2 <- tibble(name = "Jane", age = 25)
# list_rbindを使用したリストの作成
list_of_tibbles <- list_rbind(df1, df2)
# リストの内容を確認
str(list_of_tibbles)
# 名前付きのリストを作成
list_of_tibbles <- list_rbind(df1, df2, names = c("df1", "df2"))
# リストの名前を確認
names(list_of_tibbles)
# データの準備
$ df1
# A tibble: 1 x 2
name age
<chr> <dbl>
1 John 30
$ df2
# A tibble: 1 x 2
name age
<chr> <dbl>
1 Jane 25
# list_rbindを使用したリストの作成
[[1]] tibble: 1 x 2
name age
<chr> <dbl>
1 John 30
[[2]] tibble: 1 x 2
name age
<chr> <dbl>
1 Jane 25
# 名前付きのリストを作成
[[1]] tibble: 1 x 2
name age
<chr> <dbl>
1 John 30
[[2]] tibble: 1 x 2
name age
<chr> <dbl>
1 Jane 25
# リストの名前を確認
[[1]] "df1"
[[2]] "df2"
do.call
を使用して、rbind.list
関数を複数のtibbleに適用することができます。
list_of_tibbles <- do.call(rbind.list, list(df1, df2))
map
purrr
のmap
を使用して、tibbleのリストを作成することができます。
library(purrr)
list_of_tibbles <- map(list(df1, df2), ~ .x)
lapply
list_of_tibbles <- lapply(list(df1, df2), function(x) x)
r purrr