วิธีแก้ไขใน r: ข้อผิดพลาดในการเลือกอาร์กิวเมนต์ที่ไม่ได้ใช้
ข้อผิดพลาดที่คุณอาจพบใน R คือ:
Error in select(., cyl, mpg): unused arguments (cyl, mpg)
ข้อผิดพลาดนี้เกิดขึ้นเมื่อคุณพยายามใช้ฟังก์ชัน select() ของแพ็คเกจ dplyr ใน R แต่ยังโหลดแพ็คเกจ MASS ด้วย
เมื่อสิ่งนี้เกิดขึ้น R จะพยายามใช้ฟังก์ชัน select() ของแพ็คเกจ MASS แทน และเกิดข้อผิดพลาดขึ้น
บทช่วยสอนนี้จะอธิบายวิธีแก้ไขข้อผิดพลาดนี้อย่างชัดเจน
วิธีการทำซ้ำข้อผิดพลาด
สมมติว่าเราพยายามเรียกใช้โค้ดต่อไปนี้เพื่อสรุปตัวแปรในชุดข้อมูล mtcars ใน R:
library (dplyr)
library (MASS)
#find average mpg grouped by 'cyl'
mtcars %>%
select(cyl, mpg) %>%
group_by(cyl) %>%
summarize(avg_mpg = mean(mpg))
Error in select(., cyl, mpg): unused arguments (cyl, mpg)
เกิดข้อผิดพลาดเนื่องจากฟังก์ชัน select() ของแพ็คเกจ MASS ขัดแย้งกับฟังก์ชัน select() ของแพ็คเกจ dplyr
วิธีการแก้ไขข้อผิดพลาด
วิธีที่ง่ายที่สุดในการแก้ไขข้อผิดพลาดนี้คือการบอก R อย่างชัดเจนให้ใช้ฟังก์ชัน select() จากแพ็คเกจ dplyr โดยใช้โค้ดต่อไปนี้:
library (dplyr)
library (MASS)
#find average mpg grouped by 'cyl'
mtcars %>%
dplyr::select(cyl, mpg) %>%
group_by(cyl) %>%
summarize(avg_mpg = mean(mpg))
# A tibble: 3 x 2
cyl avg_mpg
1 4 26.7
2 6 19.7
3 8 15.1
รหัสทำงานได้สำเร็จเนื่องจาก dplyr::select บอก R อย่างชัดเจนให้ใช้ฟังก์ชัน select() จากแพ็คเกจ dplyr แทนแพ็คเกจ MASS
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้อธิบายวิธีแก้ไขข้อผิดพลาดทั่วไปอื่น ๆ ใน R:
วิธีแก้ไขใน R: ชื่อไม่ตรงกับชื่อก่อนหน้า
วิธีแก้ไขใน R: ความยาวของวัตถุที่ยาวกว่าไม่ใช่ผลคูณของความยาวของวัตถุที่สั้นกว่า
วิธีแก้ไขใน R: คอนทราสต์ใช้ได้กับปัจจัยที่มี 2 ระดับขึ้นไปเท่านั้น