[解決済み] R: リストからNULL要素を削除する
2023-02-10 03:18:14
質問
mylist <- list(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
123, NULL, 456)
> mylist
[[1]]
NULL
[[2]]
NULL
[[3]]
NULL
[[4]]
NULL
[[5]]
NULL
[[6]]
NULL
[[7]]
NULL
[[8]]
NULL
[[9]]
NULL
[[10]]
NULL
[[11]]
[1] 123
[[12]]
NULL
[[13]]
[1] 456
私のリストには13の要素があり、そのうちの11個はNULLです。私はそれらを削除したいのですが、空でない要素のインデックスを保持します。
mylist2 = mylist[-which(sapply(mylist, is.null))]
> mylist2
[[1]]
[1] 123
[[2]]
[1] 456
これは NULL 要素をうまく取り除きますが、空でない要素にはインデックスを付け直したくないので、つまりは
mylist2
をこのようにしたいのです。空でない項目のインデックスは保存されます。
> mylist2
[[11]]
[1] 123
[[13]]
[1] 456
どのように解決するのですか?
一番近いのは、まずリスト要素に名前を付けてから、NULLを削除することです。
names(x) <- seq_along(x)
## Using some higher-order convenience functions
Filter(Negate(is.null), x)
# $`11`
# [1] 123
#
# $`13`
# [1] 456
# Or, using a slightly more standard R idiom
x[sapply(x, is.null)] <- NULL
x
# $`11`
# [1] 123
#
# $`13`
# [1] 456
関連
-
二項演算子への非数値引数を報告するR言語エラー
-
[解決策】 plot.new() のエラー:図の余白が大きすぎる。
-
R - ユークリッド距離の計算を簡単にする方法
-
R言語における共通関数
-
[解決済み] "エラーです。Rでテーマの書式を保存する際に「Don't know how to add RHS to the theme object」(テーマオブジェクトにRHSを追加する方法がわかりません)と表示されます。
-
[解決済み] データフレームを結合(マージ)する方法(内側、外側、左側、右側)
-
[解決済み] データフレーム列の名前によるドロップ
-
[解決済み】data.table vs dplyr:一方がうまくできない、またはうまくできないことを行うことができますか?
-
[解決済み】data.frameのカラムを因子から文字に変換する
-
[解決済み] データフレームのカラムのデータ型を決定する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
R LanguageError in hist.default() : 'x' は数値でなければなりません.
-
R - ユークリッド距離の計算を簡単にする方法
-
DEG解析で'row.names'に重複した名前を付けられない場合の解決法
-
[解決済み] データフレーム列の名前によるドロップ
-
[解決済み] リストやデータフレームの要素にアクセスするためのブラケット[ ]とダブルブラケット[[ ]]の違いについて
-
[解決済み] Rでロードされているパッケージのバージョンを調べるには?
-
[解決済み】RでCRANミラーを選択する方法
-
[解決済み】ifelse()でDateオブジェクトがnumericオブジェクトにならないようにする方法
-
[解決済み] FUN内のlapplyインデックス名へのアクセス
-
[解決済み] ggplot2 で個々のファセットにテキストをアノテートする