Rでは、このna.omit()
関数を使用して、NA値を含むdata.frame内のエントリを破棄できます。副作用として、行が実際に破棄された場合、関数は、破棄されたrow.namesのベクトルを含む結果に属性'omit'を追加します。
この'omit'属性は必要ないので、破棄したいと思います。それを行うための最良の方法は何ですか?
Rでは、このna.omit()
関数を使用して、NA値を含むdata.frame内のエントリを破棄できます。副作用として、行が実際に破棄された場合、関数は、破棄されたrow.namesのベクトルを含む結果に属性'omit'を追加します。
この'omit'属性は必要ないので、破棄したいと思います。それを行うための最良の方法は何ですか?
data.frame
後で使用するna.omit
か、直接実行できます。
> temp <- data.frame(a=c(1,NA,44),b=c(99,29,NA))
> new <- na.omit(temp)
> attributes(new)
$names
[1] "a" "b"
$row.names
[1] 1
$class
[1] "data.frame"
$na.action
2 3
2 3
attr(,"class")
[1] "omit"
> reduced <- data.frame(new)
> attributes(reduced)
$names
[1] "a" "b"
$row.names
[1] 1
$class
[1] "data.frame"
>
直接法:
attributes(new)$na.action <- NULL