R语言 在数据框架中查找带有NA的列和行

R语言 在数据框架中查找带有NA的列和行

一个数据框架由单元格组成,称为数据元素,以行和列的形式排列。一个数据框架可以有属于不同数据类型的数据元素,也可以有缺失值,用NA表示。

方法

  • 声明数据框
  • 使用函数获取数值来获取NA值
  • 存储位置
  • 显示结果

以下是R集体中的内置函数,可用于查找数据框中具有NA值的行和列对。 is.na() 函数返回一个True和False值的逻辑向量,以表明哪些相应的元素是NA或不是。接下来是应用which()函数,指示数据元素的位置。下面的代码片断可以用来寻找这种元素的索引位置。

语法

which(is.na(dataframe), arr.ind=TRUE)

例子

# declaring data frame
data_frame = data.frame(
col1 = c(1,NA),
col2 = c(7:8),
col3 = c(NA,NA))
  
# printing original data frame
print ("Original Data Frame")
print(data_frame)
  
# extracting positions of NA values
print ("Row and Col positions of NA values")
which(is.na(data_frame), arr.ind=TRUE)

输出

[1] "Original Data Frame"
 col1 col2 col3
1    1    7   NA
2   NA    8   NA
[1] "Row and Col positions of NA values"
    row col
[1,]   2   1
[2,]   1   3
[3,]   2   3

如果我们没有指定arr,ind=TRUE作为参数,那么将返回按行计算的元素编号。

例子

# declaring data frame
data_frame = data.frame(
col1 = c("A",NA,"B"),
col2 = c(100:102),
col3 = c(NA,NA,9))
  
# printing original data frame
print ("Original Data Frame")
print(data_frame)
  
# finding NA values beginning with row1 and col1 as the
# first element. Rows2 and col2 is second element.
print ("Row and Col positions of NA values")
which(is.na(data_frame))

输出

[1] "Original Data Frame"
 col1 col2 col3
1    A  100   NA
2 <NA>  101   NA
3    B  102    9
[1] "Row and Col positions of NA values"
[1] 2 7 8

缺失值也可以在一列中单独计算,方法是在上述代码片段中使用dataframe$colname作为参数访问数据框架的特定列。如果在特定的列中没有缺失值,将返回整数(0)作为输出。

例子

# declaring data frame
data_frame = data.frame(
col1 = c("A",NA,"B"),
col2 = c(100:102),
col3 = c(NA,NA,9))
  
# printing original data frame
print ("Original Data Frame")
print(data_frame)
  
# extracting positions of NA values
print ("NA values in column 1")
which(is.na(data_framecol1), arr.ind=TRUE)
  
# extracting positions of NA values
print ("NA values in column 2")
which(is.na(data_framecol2), arr.ind=TRUE)

输出

 [1] "Original Data Frame"
 col1 col2 col3
1    A  100   NA
2 <NA>  101   NA
3    B  102    9
[1] "NA values in column 1"
[1] 2
[1] "NA values in column 2"
integer(0)

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程