วิธีใช้ฟังก์ชัน split() ใน r เพื่อแยกข้อมูล


ฟังก์ชัน split() ใน R สามารถใช้เพื่อแบ่งข้อมูลออกเป็นกลุ่มตามระดับปัจจัย

ฟังก์ชันนี้ใช้ไวยากรณ์พื้นฐานต่อไปนี้:

หาร(x, f, …)

ทอง:

  • x : ชื่อของเวกเตอร์หรือบล็อกข้อมูลที่จะแบ่งออกเป็นกลุ่ม
  • f : ปัจจัยที่กำหนดการจัดกลุ่ม

ตัวอย่างต่อไปนี้แสดงวิธีใช้ฟังก์ชันนี้เพื่อแบ่งเวกเตอร์และกรอบข้อมูลออกเป็นกลุ่มๆ

ตัวอย่างที่ 1: ใช้ split() เพื่อแบ่งเวกเตอร์ออกเป็นกลุ่ม

รหัสต่อไปนี้แสดงวิธีแบ่งเวกเตอร์ของค่าข้อมูลออกเป็นกลุ่มตามเวกเตอร์ของระดับปัจจัย:

 #create vector of data values
data <- c(1, 2, 3, 4, 5, 6)

#create vector of groupings
groups <- c('A', 'B', 'B', 'B', 'C', 'C')

#split vector of data values into groups
split(x = data, f = groups)

$A
[1] 1

$B
[1] 2 3 4

$C
[1] 5 6

ผลลัพธ์คือสามกลุ่ม

โปรดทราบว่าคุณยังสามารถใช้การจัดทำดัชนีเพื่อดึงข้อมูลกลุ่มเฉพาะได้:

 #split vector of data values into groups and only display second group
split(x = data, f = groups)[2]

$B
[1] 2 3 4

ตัวอย่างที่ 2: ใช้ split() เพื่อแบ่งเฟรมข้อมูลออกเป็นกลุ่ม

สมมติว่าเรามี data frame ต่อไปนี้ใน R:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'),
                 position=c('G', 'G', 'F', 'G', 'F', 'F'),
                 points=c(33, 28, 31, 39, 34, 44),
                 assists=c(30, 28, 24, 24, 28, 19))

#view data frame
df

  team position points assists
1 GA 33 30
2 AG 28 28
3 AF 31 24
4 BG 39 24
5 BF 34 28
6 BF 44 19

เราสามารถใช้โค้ดต่อไปนี้เพื่อแบ่ง data frame ออกเป็นกลุ่มตามตัวแปร “ทีม”:

 #split data frame into groups based on 'team'
split(df, f = df$team)

$A
  team position points assists
1 GA 33 30
2 AG 28 28
3 AF 31 24

$B
  team position points assists
4 BG 39 24
5 BF 34 28
6 BF 44 19

ผลลัพธ์คือสองกลุ่ม บรรทัดแรกมีเพียงบรรทัดที่ “ทีม” เท่ากับ A และบรรทัดที่สองมีเพียงบรรทัดที่ “ทีม” เท่ากับ B

โปรดทราบว่าเราสามารถแบ่งข้อมูลออกเป็นกลุ่มๆ โดยใช้ตัวแปรปัจจัยหลายตัวได้ ตัวอย่างเช่น รหัสต่อไปนี้แสดงวิธีแบ่งข้อมูลออกเป็นกลุ่มตามตัวแปร “ทีม” และ “ตำแหน่ง”:

 #split data frame into groups based on 'team' and 'position' variables
split(df, f = list(df$team, df$position))

$AF
  team position points assists
3 AF 31 24

$BF
  team position points assists
5 BF 34 28
6 BF 44 19

$AG
  team position points assists
1 GA 33 30
2 AG 28 28

$BG
  team position points assists
4 BG 39 24

ผลลัพธ์ที่ได้คือสี่กลุ่ม

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีใช้ฟังก์ชันทั่วไปอื่นๆ ใน R:

วิธีใช้ฟังก์ชัน summary() ใน R
วิธีใช้ฟังก์ชัน Replicate() ใน R
วิธีใช้ฟังก์ชัน match() ใน R

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *