วิธีจัดเรียงเฟรมข้อมูลตามคอลัมน์ใน r (พร้อมตัวอย่าง)


วิธีที่ง่ายที่สุดในการจัดเรียงกรอบข้อมูลตามคอลัมน์ใน R คือการใช้ฟังก์ชัน order() :

 #sort ascending
df[ order (df$var1), ]

#sort descending
df[ order (-df$var1), ]

บทช่วยสอนนี้ให้ตัวอย่างหลายตัวอย่างเกี่ยวกับวิธีใช้งานฟังก์ชันนี้กับกรอบข้อมูลต่อไปนี้:

 #create data frame
df <- data. frame (var1=c(1, 3, 3, 4, 5),
                 var2=c(7, 7, 8, 3, 2),
                 var3=letters[1:5])

#view data frame
df

  var1 var2 var3
1 1 7 a
2 3 7b
3 3 8 c
4 4 3 d
5 5 2nd

ตัวอย่างที่ 1: จัดเรียงตามคอลัมน์

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

 #sort by var1 ascending
df[ order (df$var1), ]

  var1 var2 var3
1 1 7 a
2 3 7b
3 3 8 c
4 4 3 d
5 5 2nd

#sort by var1 descending
df[ order (-df$var1), ]

  var1 var2 var3
5 5 2nd
4 4 3 d
2 3 7 b
3 3 8 c
1 1 7 a

โปรดทราบว่าเราสามารถจัดเรียงตามเวกเตอร์อักขระตามลำดับตัวอักษรได้:

 #sort by var3 ascending
df[ order (df$var3), ]

  var1 var2 var3
1 1 7 a
2 3 7 b
3 3 8 c
4 4 3 d
5 5 2nd

ตัวอย่างที่ 2: เรียงลำดับหลายคอลัมน์

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

 #sort by var2 ascending, then var1 ascending
df[ order (df$var2, df$var1), ]

  var1 var2 var3
5 5 2nd
4 4 3 d
1 1 7 a
2 3 7b
3 3 8 c

#sort by var2 ascending, then var1 descending
df[ order (df$var2, -df$var1), ]

  var1 var2 var3
5 5 2nd
4 4 3 d
2 3 7b
1 1 7 a
3 3 8 c

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

วิธีเพิ่มคอลัมน์ใน data frame ใน R
วิธีจัดเรียง dataframe ตามวันที่ใน R
วิธีแปลงอักขระเป็นตัวเลขใน R

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

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