[R] Remove cases with -Inf from a data frame

Rui Barradas
Sat, 16 Feb 2019 16:36:31 -0000

Hello,

An alternative, same dataset.

df[apply(df, 1, function(x) all(is.finite(x))), ]


Hope this helps,

Rui Barradas

?s 16:14 de 16/02/2019, Martin M?ller Skarbiniks Pedersen
escreveu:
> On Sat, 16 Feb 2019 at 16:07, AbouEl-Makarim Aboueissa <
> abouelmakarim1962 at gmail.com> wrote:
>>
>> I have a log-transformed data frame with some *-Inf* data values.
>>
>> *my question: *how to remove all rows with *-Inf* data value from that
> data
>> frame?
>
>
> Hi,
>    Here is a solution which uses apply.
>
> First a data-frame as input:
>
> set.seed(1)
> df <- data.frame(w = sample(c(-Inf,1:20), 10),
>                   x = sample(c(-Inf,1:20), 10),
>                   y = sample(c(-Inf,1:20), 10),
>                   z = sample(c(-Inf,1:20), 10))
>
> df <- df[-(unlist(apply(df, 2, function(x) which(x == -Inf)))),]
>
> Regards
> Martin
>
> 	[[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide