如何从至少有一个无穷值(Inf
或 -Inf
)的数据框中选择行?
以下是一个示例数据框:
my_data <- data.frame(column1 = c(Inf, 5, 3,4,5),
column2 = c(1, Inf, -Inf, NA, 33))
我尝试过:
my_data[rowSums(is.infinite(my_data)) > 0, ]
但是出现了错误:
Error in is.infinite(my_data) : default method not implemented for type 'list'
这很令人惊讶,因为 is.na()
的等效方法可以正常工作:
my_data[rowSums(is.na(my_data)) > 0, ]
我找到了一些将
Inf
值更改为NA
的方法,但这不是我想要的,我只想显示所有包含Inf
或-Inf
的行,而不是用NA
替换它们。
编辑:如果有一种方法可以在一个具有多个列的数据框中执行此操作,而无需逐个键入每个列,则最理想。
任何帮助都将不胜感激!
x
的?is.infinite
:“默认方法处理原子向量”。然后参见相应的文本?is.na
。 - Henrik