วิธีใช้ฟังก์ชัน make.names ใน r (พร้อมตัวอย่าง)
คุณสามารถใช้ฟังก์ชัน make.names ใน R เพื่อสร้างชื่อที่ถูกต้องตามหลักไวยากรณ์จากเวกเตอร์อักขระ
ฟังก์ชันนี้ใช้ไวยากรณ์พื้นฐานต่อไปนี้:
make.names(names, unique = FALSE)
ทอง:
- ชื่อ : เวกเตอร์ของอักขระเพื่อจำกัดชื่อที่ถูกต้องทางวากยสัมพันธ์
- Unique : ไม่ว่าจะสร้างชื่อเฉพาะหรือไม่ก็ตาม ค่าเริ่มต้นเป็นเท็จ
ตัวอย่างต่อไปนี้แสดงวิธีการใช้ฟังก์ชันนี้ในสถานการณ์ต่างๆ
ตัวอย่างที่ 1: สร้างชื่อที่ถูกต้องสำหรับเวกเตอร์
สมมติว่าเรามีเวกเตอร์ของค่าตัวเลขดังต่อไปนี้:
#create vector of numeric values
numeric_values <- c(1, 1, 4, 7, 8)
#create syntactically valid names from numeric values
make. names (numeric_values)
[1] "X1" "X1" "X4" "X7" "X8"
R กำหนด “ชื่อที่ถูกต้อง” เป็นชื่อที่ขึ้นต้นด้วยอักขระหรือจุด
ดังนั้นในการแปลงค่าตัวเลขของเวกเตอร์แต่ละค่าให้เป็นชื่อที่ถูกต้อง R เพียงเพิ่ม “X” ที่หน้าแต่ละค่า
โปรดทราบว่าชื่อสองชื่อ (“X1”) นั้นเหมือนกันทุกประการ
หากต้องการบังคับให้ชื่อไม่ซ้ำกัน เราสามารถระบุ Unique=TRUE :
#create vector of numeric values
numeric_values <- c(1, 1, 4, 7, 8)
#create syntactically valid names from numeric values
make. names (numeric_values, unique= TRUE )
[1] "X1" "X1.1" "X4" "X7" "X8"
โปรดทราบว่าตอนนี้แต่ละชื่อไม่ซ้ำกัน
ตัวอย่างที่ 2: สร้างชื่อที่ถูกต้องสำหรับเมทริกซ์
สมมติว่าเรามีเมทริกซ์ต่อไปนี้ใน R:
#create matrix
mat <- matrix(c(1, 2, 3, 7, 2, 4, 4, 6, 0, 1), ncol= 2 )
#view matrix
mast
[,1] [,2]
[1,] 1 4
[2,] 2 4
[3,] 3 6
[4,] 7 0
[5,] 2 1
#view column names of matrix
colnames(mat)
NULL
โปรดทราบว่าขณะนี้เมทริกซ์ไม่มีชื่อคอลัมน์
อย่างไรก็ตาม เราสามารถใช้ฟังก์ชัน make.names() เพื่อสร้างชื่อคอลัมน์ได้อย่างรวดเร็ว:
#create column names for matrix
colnames(mat) <- make. names (1:ncol(mat))
#view updated matrix
mast
X1 X2
[1,] 1 4
[2,] 2 4
[3,] 3 6
[4,] 7 0
[5,] 2 1
โปรดสังเกตว่าขณะนี้เมทริกซ์มี “X1” และ “X2” เป็นชื่อคอลัมน์
หากเราต้องการ ตอนนี้เราสามารถแยกค่าของคอลัมน์เฉพาะของเมทริกซ์โดยใช้ชื่อคอลัมน์ได้:
#view values in "X1" column of matrix
mat[, ' X1 ']
[1] 1 2 3 7 2
โปรดทราบว่าคุณสามารถพิมพ์ข้อความต่อไปนี้ใน R เพื่ออ่านเอกสารฉบับเต็มเกี่ยวกับวิธีสร้างชื่อที่ถูกต้องทางไวยากรณ์:
?make.names
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการทั่วไปอื่นๆ ใน R:
วิธีเปลี่ยนชื่อบรรทัดใน R
วิธีวนซ้ำชื่อคอลัมน์ใน R
วิธีใช้ฟังก์ชันชื่อใน R