วิธีใช้ฟังก์ชันแทนที่() ใน r


ฟังก์ชัน แทนที่() ใน R สามารถใช้เพื่อแทนที่องค์ประกอบเฉพาะของเวกเตอร์ด้วยค่าใหม่

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

แทนที่ (x, รายการ, ค่า)

ทอง:

  • x : ชื่อเวกเตอร์
  • รายการ : องค์ประกอบที่จะแทนที่
  • ค่า : ค่าทดแทน

ตัวอย่างต่อไปนี้แสดงวิธีใช้ฟังก์ชันนี้ในทางปฏิบัติ

ตัวอย่างที่ 1: แทนที่ค่าในเวกเตอร์

รหัสต่อไปนี้แสดงวิธีการแทนที่องค์ประกอบในตำแหน่งที่ 2 ของเวกเตอร์ด้วยค่าใหม่ 50:

 #define vector of values
data <- c(3, 6, 8, 12, 14, 15, 16, 19, 22)

#define new vector with a different value in position 2
data_new <- replace(data, 2, 50)

#view new vector
data_new

[1] 3 50 8 12 14 15 16 19 22

โปรดทราบว่าองค์ประกอบในตำแหน่งที่ 2 มีการเปลี่ยนแปลง แต่ค่าอื่น ๆ ทั้งหมดในเวกเตอร์ดั้งเดิมยังคงเหมือนเดิม

ตัวอย่างที่ 2: แทนที่ค่าหลายค่าในเวกเตอร์

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

 #define vector of values
data <- c(2, 4, 6, 8, 10, 12, 14, 16)

#define new vector with different values in position 1, 2, and 8
data_new <- replace(data, c(1, 2, 8), c(50, 100, 200))

#view new vector
data_new

[1] 50 100 6 8 10 12 14 200

โปรดทราบว่าองค์ประกอบในตำแหน่ง 1, 2 และ 8 มีการเปลี่ยนแปลงทั้งหมด

ตัวอย่างที่ 3: แทนที่ค่าในกรอบข้อมูล

รหัสต่อไปนี้แสดงวิธีการแทนที่ค่าในคอลัมน์หนึ่งของกรอบข้อมูลที่ตรงตามเงื่อนไขเฉพาะ:

 #define data frame
df <- data. frame (x=c(1, 2, 4, 4, 5, 7),
                 y=c(6, 6, 8, 8, 10, 11))

#view data frame
df

  xy
1 1 6
2 2 6
3 4 8
4 4 8
5 5 10
6 7 11

#replace values in column 'x' greater than 4 with a new value of 50
df$x <- replace(df$x, df$x > 4, 50)

#view updated data frame
df

   xy
1 1 6
2 2 6
3 4 8
4 4 8
5 50 10
6 50 11

แต่ละค่าในคอลัมน์ “x” ที่มากกว่า 4 ถูกแทนที่ด้วยค่า 50

ค่าอื่นๆ ทั้งหมดในกรอบข้อมูลยังคงเหมือนเดิม

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

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

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

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

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