有一些类似的问题,但并不是我想要做的。
我有一个数据框,我想删除那些连续具有n个NA值的行。
1 Manhattan NA 2300 NA 2275 2300
2 Manhattan 2999 2975 NA NA 2995
3 Manhattan NA NA NA NA 4400
4 Manhattan 6725 6500 6750 6995 6800
5 Brooklyn 2000 1995 1975 2000 1999
6 Bronx 1200 3200 NA NA NA
我有一些有效的代码可以删除n个NA值,但我想要对连续的NA值进行调整。
delete.na <- function(df, n=0) {
df[rowSums(is.na(df)) <= n,]
}
df <- delete.na(df,3)
因此,在删除具有连续3个NA值的行之后,我将会得到:
1 Manhattan NA 2300 NA 2275 2300
2 Manhattan 2999 2975 NA NA 2995
4 Manhattan 6725 6500 6750 6995 6800
5 Brooklyn 2000 1995 1975 2000 1999