วิธีแก้ไขใน 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 ระดับขึ้นไปเท่านั้น

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

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