วิธีนับค่าที่ไม่ซ้ำในคอลัมน์ใน r
คุณสามารถใช้วิธีการต่อไปนี้เพื่อนับจำนวนค่าที่ไม่ซ้ำในคอลัมน์ของกรอบข้อมูลใน R:
วิธีที่ 1: ใช้ Base R
length(unique(df$my_column))
วิธีที่ 2: ใช้ dplyr
library (dplyr)
n_distinct(df$my_column)
ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติกับกรอบข้อมูลต่อไปนี้:
#create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'C', 'C', 'D'),
points=c(10, 13, 14, 14, 18, 19, 20, 20, 22))
#view data frame
df
team points
1 to 10
2 to 13
3 to 14
4 to 14
5 B 18
6 B 19
7 C 20
8 C 20
9 D 22
วิธีที่ 1: นับค่าที่ไม่ซ้ำในคอลัมน์โดยใช้ฐาน R
รหัสต่อไปนี้แสดงวิธีนับจำนวนค่าที่ไม่ซ้ำในคอลัมน์ จุด ของกรอบข้อมูลโดยใช้ฟังก์ชันฐาน R:
#count unique values in points column
length(unique(df$points))
[1] 7
มีค่าที่ไม่ซ้ำกัน 7 ค่าในคอลัมน์ คะแนน
ในการนับจำนวนค่าที่ไม่ซ้ำในแต่ละคอลัมน์ของกรอบข้อมูล เราสามารถใช้ฟังก์ชัน sapply() ได้:
#count unique values in each column
sapply(df, function (x) length(unique(x)))
team points
4 7
จากผลลัพธ์เราจะเห็นได้ว่า:
- มีค่าที่ไม่ซ้ำกัน 7 ค่าในคอลัมน์ คะแนน
- มีค่าที่ไม่ซ้ำกัน 4 ค่าในคอลัมน์ ทีม
วิธีที่ 2: นับค่าที่ไม่ซ้ำในคอลัมน์โดยใช้ dplyr
รหัสต่อไปนี้แสดงวิธีนับจำนวนค่าที่แตกต่างกันในคอลัมน์ จุด โดยใช้ฟังก์ชัน n_distinct() จากแพ็คเกจ dplyr:
library (dplyr)
#count unique values in points column
n_distinct(df$points)
[1] 7
มีค่าที่ไม่ซ้ำกัน 7 ค่าในคอลัมน์ คะแนน
ในการนับจำนวนค่าที่ไม่ซ้ำในแต่ละคอลัมน์ของกรอบข้อมูล เราสามารถใช้ฟังก์ชัน sapply() ได้:
library (dplyr)
#count unique values in each column
sapply(df, function (x) n_distinct(x))
team points
4 7
จากผลลัพธ์เราจะเห็นได้ว่า:
- มีค่าที่ไม่ซ้ำกัน 7 ค่าในคอลัมน์ คะแนน
- มีค่าที่ไม่ซ้ำกัน 4 ค่าในคอลัมน์ ทีม
โปรดทราบว่าผลลัพธ์เหล่านี้ตรงกับผลลัพธ์ของวิธี R พื้นฐาน
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่นๆ ใน R:
วิธีนับรายการที่ซ้ำกันใน R
วิธีนับค่าที่ไม่ซ้ำตามกลุ่มใน R
วิธีนับจำนวนค่า NA ในแต่ละคอลัมน์ใน R