วิธีเพิ่มแถวเฉพาะใน r: พร้อมตัวอย่าง


เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อเพิ่มแถวเฉพาะของกรอบข้อมูลใน R:

 with (df, sum (column_1[column_2 == ' some value ']))

ไวยากรณ์นี้ค้นหาผลรวมแถวของคอลัมน์ 1 โดยที่คอลัมน์ 2 เท่ากับค่า โดยที่เฟรมข้อมูลเรียกว่า df

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

 #create data frame
df <- data.frame(team = c('A', 'A', 'B', 'B', 'B', 'C', 'C'),
points = c(4, 7, 8, 8, 8, 9, 12),
rebounds = c(3, 3, 4, 4, 6, 7, 7))

#view data frame
df

  team points rebounds
1 to 4 3
2 to 7 3
3 B 8 4
4 B 8 4
5 B 8 6
6 C 9 7
7 C 12 7

ตัวอย่างที่ 1: เพิ่มแถวตามค่าคอลัมน์

รหัสต่อไปนี้แสดงวิธีค้นหาผลรวมของแถวทั้งหมดในคอลัมน์คะแนนโดยที่ทีมเท่ากับ C:

 #find sum of points where team is equal to 'C'
with (df, sum (points[team == ' C ']))

[1] 21

และโค้ดต่อไปนี้แสดงวิธีค้นหาผลรวมของแถวทั้งหมดในคอลัมน์ตีกลับโดยที่ค่าของคอลัมน์คะแนนมากกว่า 7:

 #find sum of rebounds where points is greater than 7
with (df, sum (rebounds[points > 7]))

[1] 28

ตัวอย่างที่ 2: เพิ่มแถวตามค่าของหลายคอลัมน์

รหัสต่อไปนี้แสดงวิธีการค้นหาผลรวมของแถวในคอลัมน์รีบาวน์โดยที่ค่าคอลัมน์คะแนนน้อยกว่า 8 หรือ ค่าคอลัมน์ทีมเท่ากับ C:

 with (df, sum (rebounds[points < 8 | team == ' C ']))

[1] 20

และโค้ดต่อไปนี้แสดงวิธีหาผลรวมของแถวในคอลัมน์รีบาวด์ โดยที่ค่าในคอลัมน์คะแนนน้อยกว่า 10 และ ค่าในคอลัมน์ทีมเท่ากับ B:

 with (df, sum (rebounds[points < 10 & team == ' B ']))

[1] 14

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

วิธีจัดเรียงเส้นใน R
วิธีลบบรรทัดที่ซ้ำกันใน R
วิธีลบแถวที่มี NA บางส่วนหรือทั้งหมดใน R

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

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