如何删除包含 R 数据框中所有列的编码缺失值的行?
有时对缺失值进行编码,当我们在不替换这些缺失值的情况下进行分析时,分析结果变得有点难以解释,尤其是第一次阅读的读者很难理解。
因此,我们可能想要删除包含编码缺失值的行。为此,我们可以用 NA 替换编码的缺失值,然后用 NA 替换行,如下面给出的示例所示。
示例 1
以下代码段创建一个数据框,如果缺失值被编码为 1 -
x1<-rpois(20,1)x2<-rpois(20,1)
df1<-data.frame(x1,x2)
df1
创建以下数据框 -
x1 x21 1 0
2 1 2
3 1 3
4 1 1
5 0 1
6 0 1
7 1 0
8 0 1
9 2 1
10 1 2
11 0 3
12 1 0
13 1 2
14 2 2
15 0 0
16 2 3
17 1 1
18 2 0
19 0 0
20 1 1
要删除包含 R 数据框中所有列的编码缺失值的行,请将以下代码添加到上述代码段中 -
x1<-rpois(20,1)输出结果x2<-rpois(20,1)
df1<-data.frame(x1,x2)
df1[df1==1]<-NA
df1
如果您将上述所有给定的代码片段作为单个程序执行,它会生成以下输出: -
x1 x21 NA 0
2 NA 2
3 NA 3
4 NA NA
5 0 NA
6 0 NA
7 NA 0
8 0 NA
9 2 NA
10 NA 2
11 0 3
12 NA 0
13 NA 2
14 2 2
15 0 0
16 2 3
17 NA NA
18 2 0
19 0 0
20 NA NA
要删除包含 R 数据框中所有列的编码缺失值的行,请将以下代码添加到上述代码段中 -
df1[rowSums(is.na(df1))<ncol(df1),]输出结果
如果您将上述所有给定的代码片段作为单个程序执行,它会生成以下输出: -
x1 x21 NA 0
2 NA 2
3 NA 3
5 0 NA
6 0 NA
7 NA 0
8 0 NA
9 2 NA
10 NA 2
11 0 3
12 NA 0
13 NA 2
14 2 2
15 0 0
16 2 3
18 2 0
19 0 0
示例 2
以下代码段创建一个数据框,如果缺失值被编码为 99 -
y1<-sample(c(1,99),20,replace=TRUE)y2<-sample(c(5,99),20,replace=TRUE)
df2<-data.frame(y1,y2)
df2
创建以下数据框 -
y1 y21 99 5
2 99 5
3 99 5
4 1 99
5 1 99
6 1 5
7 1 99
8 99 99
9 99 99
10 99 99
11 99 99
12 99 5
13 1 99
14 99 5
15 99 5
16 99 99
17 99 5
18 99 99
19 99 99
20 99 5
要删除包含 R 数据框中所有列的编码缺失值的行,请将以下代码添加到上述代码段中 -
y1<-sample(c(1,99),20,replace=TRUE)输出结果y2<-sample(c(5,99),20,replace=TRUE)
df2<-data.frame(y1,y2)
df2[df2==99]<-NA
df2
如果您将上述所有给定的代码片段作为单个程序执行,它会生成以下输出: -
y1 y21 NA 5
2 NA 5
3 NA 5
4 1 NA
5 1 NA
6 1 5
7 1 NA
8 NA NA
9 NA NA
10 NA NA
11 NA NA
12 NA 5
13 1 NA
14 NA 5
15 NA 5
16 NA NA
17 NA 5
18 NA NA
19 NA NA
20 NA 5
要删除包含 R 数据框中所有列的编码缺失值的行,请将以下代码添加到上述代码段中 -
df2[rowSums(is.na(df2))<ncol(df2),]输出结果
如果您将上述所有给定的代码片段作为单个程序执行,它会生成以下输出: -
y1 y21 NA 5
2 NA 5
3 NA 5
4 1 NA
5 1 NA
6 1 5
7 1 NA
12 NA 5
13 1 NA
14 NA 5
15 NA 5
17 NA 5
20 NA 5
以上是 如何删除包含 R 数据框中所有列的编码缺失值的行? 的全部内容, 来源链接: utcz.com/z/345719.html