2017-05-28 103 views
0

我正试图在非常大的列表中删除我的NaNs。 卸下NAs是很容易与如何删除大列表中的NaN

My.List[!is.na(My.List)] 

但是用

My.List[!is.nan(My.List)] 

不是列表(R-错误)的实现的方法。

你能帮我吗?谢谢!

+0

你能My.List的一个小例子添加到您的问题,请为is.na方法可能就足够。 Ex /'My.List = as.list(c(NaN,NA,1:3))'; 'My.List [!is.na(My.List)]'同时删除na和nan。但要删除只能nan你可以尝试'My.List [!sapply(My.List,is.nan)]' – user2957945

回答

1

尝试

MyList <- na.omit(My.List) 
+1

谢谢这个工作! – Frosi

2

您可以使用sapply找到NaN小号

> x <- list(1, NaN, 3) 
> 
> x[!sapply(x, is.nan)] 
[[1]] 
[1] 1 

[[2]] 
[1] 3 
+0

不工作:(相同的错误 – Frosi

+0

你使用什么版本的R? –

+0

我使用R/3.2.2(2015-08-14) - 这是因为大学服务器。 – Frosi