ฉันจะใช้ “is not na” ได้อย่างไร ในร
คุณสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อส่งกลับค่าใน R ที่ไม่ใช่ค่า NA:
#return only values that are not NA x <- x[ ! is. na (x)]
ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้กับทั้งเวกเตอร์และเฟรมข้อมูลใน R
ตัวอย่างที่ 1: ส่งคืนค่าที่ไม่ใช่ NA ในเวกเตอร์
รหัสต่อไปนี้แสดงวิธีการคืนค่าจากเวกเตอร์ที่ไม่ใช่ NA:
#createvector x <- c(1, 24, NA, 6, NA, 9) #return only values that are not NA x <- x[ ! is. na (x)] [1] 1 24 6 9
ตัวอย่างที่ 2: ส่งกลับแถวที่ไม่ใช่ NA ในคอลัมน์ในกรอบข้อมูล
รหัสต่อไปนี้แสดงวิธีการส่งคืนแถวในกรอบข้อมูลที่ไม่มีค่า NA ในคอลัมน์เฉพาะ:
#create data frame
df <- data. frame (x=c(1, 24, NA, 6, NA, 9),
y=c(NA, 3, 4, 8, NA, 12),
z=c(NA, 7, 5, 15, 7, 14))
#view data frame
df
X Y Z
1 1 NA NA
2 24 3 7
3 NA 4 5
4 6 8 15
5 NA NA 7
6 9 12 14
#remove rows with NA in z column
df <- df[ ! (is. na (df$z)), ]
#view data frame
df
X Y Z
2 24 3 7
3 NA 4 5
4 6 8 15
5 NA NA 7
6 9 12 14
ตัวอย่างที่ 3: ส่งกลับแถวที่ไม่ใช่ NA ในหลายคอลัมน์
รหัสต่อไปนี้แสดงวิธีการส่งคืนแถวใน data frame ที่ไม่มีค่า NA ในคอลัมน์ใดคอลัมน์หนึ่งจากหลายคอลัมน์:
#create data frame
df <- data. frame (x=c(1, 24, NA, 6, NA, 9),
y=c(NA, 3, 4, 8, NA, 12),
z=c(NA, 7, 5, 15, 7, 14))
#view data frame
df
X Y Z
1 1 NA NA
2 24 3 7
3 NA 4 5
4 6 8 15
5 NA NA 7
6 9 12 14
#remove rows with NA in x or y column
df <- df[ ! (is. na (df$x)) & ! (is. na (df$y)), ]
#view data frame
df
X Y Z
2 24 3 7
4 6 8 15
6 9 12 14
ตัวอย่างที่ 4: ส่งกลับแถวที่ไม่ใช่ NA ในคอลัมน์ใดๆ
รหัสต่อไปนี้แสดงวิธีการส่งคืนแถวใน data frame ที่ไม่มีค่า NA ในคอลัมน์ใด ๆ :
#create data frame
df <- data. frame (x=c(1, 24, NA, 6, NA, 9),
y=c(NA, 3, 4, 8, NA, 12),
z=c(NA, 7, 5, 15, 7, 14))
#view data frame
df
X Y Z
1 1 NA NA
2 24 3 7
3 NA 4 5
4 6 8 15
5 NA NA 7
6 9 12 14
#remove rows with NA in any column
df <- na. omitted (df)
#view data frame
df
X Y Z
2 24 3 7
4 6 8 15
6 9 12 14