« [R]行列の行(列)ごとに演算を行う | トップページ | [R]重み付き非線形最小二乗法を行う »

2026年3月 4日 (水)

[R]パイプラインを使ってリストの要素を取り出す

magrittrパッケージのextract関数かextract2関数を使う。それぞれ|>演算子(%>%演算子)を使用したパイプラインにおいて、extract関数は[ ]の、extract2関数は[[ ]]のエイリアスとして機能する。

> chara <- c("アストラ", "ヴィタ", "リフ")
> seiyu <- c("遠藤綾", "日笠陽子", "瀬戸麻沙美")
> sakuhin <- c("ゼンレスゾーンゼロ", "崩壊3rd", "スノウブレイク")
> lis <- list(sakuhin = sakuhin, chara = chara, seiyu = seiyu)
> print(lis)
$sakuhin
[1] "ゼンレスゾーンゼロ" "崩壊3rd" "スノウブレイク"
$chara
[1] "アストラ" "ヴィタ" "リフ"
$seiyu
[1] "遠藤綾" "日笠陽子" "瀬戸麻沙美"
> lis[3]
$seiyu
[1] "遠藤綾" "日笠陽子" "瀬戸麻沙美"
> lis |> extract(3)
$seiyu
[1] "遠藤綾" "日笠陽子" "瀬戸麻沙美"
> lis |> extract(3) |> typeof()
[1] "list"
> lis[[3]]
[1] "遠藤綾" "日笠陽子" "瀬戸麻沙美"
> lis |> extract2(3)
[1] "遠藤綾" "日笠陽子" "瀬戸麻沙美"
> lis |> extract2(3) |> typeof()
[1] "character"

リストに[ ]を使うと、指定した要素だけからなるリストを返す。[[ ]]は指定した要素を取り出して、その要素の自体を返す。

« [R]行列の行(列)ごとに演算を行う | トップページ | [R]重み付き非線形最小二乗法を行う »

R(演算子と制御構文)」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

« [R]行列の行(列)ごとに演算を行う | トップページ | [R]重み付き非線形最小二乗法を行う »

無料ブログはココログ

■■

■■■