[解決済み] 0の値をすべてNAに置き換える
質問
いくつかの数値列を持つデータフレームがあります。いくつかの行は、統計分析でヌルとみなされるべき0値を持っています。Rですべての0値をNULLに置き換える最速の方法は何ですか?
どのように解決するのですか?
ゼロをすべてNAに置き換える。
df[df == 0] <- NA
説明
1.
ではありません。
NULL
ゼロに置き換えるべきもの。に書いてあるように
?'NULL'
,
NULL は R の null オブジェクトを表します。
はユニークで、最も情報量の少ない空っぽのオブジェクトと見ることができるのではないでしょうか。 1 ということは、それほど驚くことではありません。
data.frame(x = c(1, NULL, 2))
# x
# 1 1
# 2 2
つまり、RはこのNULLオブジェクトのためのスペースを確保しない。
2
一方
?'NA'
ということがわかります。
NAは長さ1の論理定数で、欠損値 のインジケータを使用します。NA は raw 以外の任意のベクトル型に強制することができる。
重要なことです。
NA
は長さが1なので、Rはそのためのスペースを確保します。例えば
data.frame(x = c(1, NA, 2))
# x
# 1 1
# 2 NA
# 3 2
また、データフレーム構造では、すべての列が同じ数の要素を持つ必要があるため、"holes" が存在することはできません(すなわち。
NULL
の値)。
これで、ゼロを
NULL
は、少なくとも1つのゼロを含むすべての行を完全に削除するという意味で、データフレームに含まれます。使用する場合、例えば
var
,
cov
または
cor
でゼロを置き換えることと同じです。
NA
の値を設定し
use
として
"complete.obs"
. しかし、一般的に、これは余分な情報の損失を招くため、満足のいくものではありません。
2.
ある種のループを走らせる代わりに、ソリューションでは
df == 0
ベクトル化する。
df == 0
と同じ大きさの行列を返します(試してみてください)。
df
であり、エントリ
TRUE
と
FALSE
. さらに、この行列を部分集合に渡すことも許されています
[...]
(参照
?'['
). 最後に
df[df == 0]
は完全に直感的に理解できるのですが、不思議に思われるかもしれません。
df[df == 0] <- NA
を使えば、期待通りの効果が得られます。代入演算子
<-
は必ずしもスマートではなく、他のオブジェクトではこのように動作しないものもありますが、データフレームではこのように動作します。
?'<-'
.
<サブ
1
集合論における空集合は、何となく関連性を感じる。
<サブ
2
また、集合論との類似点として、空集合はあらゆる集合の部分集合であるが、そのための空間は確保しない。
関連
-
[解決済み] グループ化関数(tapply、by、aggregate)と*applyファミリ
-
[解決済み] リストをデータフレームに変換する
-
[解決済み] 空のdata.frameを作成する
-
[解決済み] 非常に大きなテーブルをデータフレームとして高速に読み込む
-
[解決済み] [Solved] data.frameで全てまたは一部のNA(欠損値)を含む行を削除する。
-
[解決済み】data.table vs dplyr:一方がうまくできない、またはうまくできないことを行うことができますか?
-
[解決済み】サブセットされたデータフレーム内の未使用の因子レベルを削除する
-
[解決済み】変数をグループ別に合計する方法
-
[解決済み】データフレームから特定の列を抽出する
-
[解決済み] すべての値がNAであるデータフレームから列を削除する
最新
-
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エラー。"新しい列は既存の列の後に穴を空ける"
-
[解決済み】「'dimnames' [1]の長さが配列の範囲と等しくない」とはどういう意味ですか?
-
[解決済み】RでAIC中に行数が変化するのはなぜですか?そうならないようにするにはどうしたらいいですか?
-
[解決済み】「Error in stripchart.default(x1, ...) : invalid plotting method」エラーを回避する方法は?
-
[解決済み】Rヒストグラムの範囲エラー:いくつかの'x'がカウントされない; 'break'が'x'の範囲に及ばないかもしれない
-
[解決済み】二項演算子への非数値引数【非公開
-
[解決済み】 if/while (条件) {: TRUE/FALSEが必要な場所に値がない場合のエラー
-
[解決済み】Rで、Error: ggplot2 doesn't know how to handle of data of class numericに対処する。
-
[解決済み】 .subset2(x, i, exact = exact)のエラー:Rの添え字が範囲外である。
-
[解決済み】.External.graphics Rでエラーが発生しました。