วิธีแก้ไข: อย่างน้อยต้องไม่มีข้อโต้แย้งที่ไม่ขาดหายไป ข้อเสนอแนะ
ข้อความเตือนที่คุณอาจพบใน R คือ:
Warning message: In min(data): no non-missing arguments to min; returning Inf
ข้อความเตือนนี้จะปรากฏขึ้นเมื่อใดก็ตามที่คุณพยายามค้นหาค่าต่ำสุดหรือสูงสุดของเวกเตอร์ที่มีความยาวเป็นศูนย์
สิ่งสำคัญคือต้องทราบว่านี่เป็นเพียง ข้อความเตือน เท่านั้น และไม่ได้ขัดขวางไม่ให้โค้ดของคุณทำงานจริงๆ
อย่างไรก็ตาม คุณสามารถใช้วิธีใดวิธีหนึ่งต่อไปนี้เพื่อหลีกเลี่ยงข้อความเตือนนี้โดยสิ้นเชิง:
วิธีที่ 1: ลบข้อความเตือน
suppressWarnings(min(data))
วิธีที่ 2: กำหนดฟังก์ชันแบบกำหนดเองเพื่อคำนวณค่าต่ำสุดหรือสูงสุด
#define custom function to calculate min custom_min <- function (x) { if (length(x)>0) min(x) else Inf} #use custom function to calculate min of data custom_min(data)
ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติ
วิธีที่ 1: ลบข้อความเตือน
สมมติว่าเรากำลังพยายามใช้ฟังก์ชัน min() เพื่อค้นหาค่าต่ำสุดของเวกเตอร์ที่มีความยาวเป็นศูนย์:
#define vector with no values
data <- numeric(0)
#attempt to find min value of vector
min(data)
[1] Lower
Warning message:
In min(data): no non-missing arguments to min; returning Inf
โปรดทราบว่าเราได้รับข้อความเตือนที่แจ้งให้เราทราบว่าเราพยายามค้นหาค่าต่ำสุดของเวกเตอร์โดยไม่มีอาร์กิวเมนต์ที่ไม่ขาดหายไป
เพื่อหลีกเลี่ยงข้อความเตือนนี้ เราสามารถใช้ฟังก์ชัน SuppressWarnings() ได้:
#define vector with no values
data <- numeric(0)
#find minimum value of vector
suppressWarnings(min(data))
[1] Lower
ค่าต่ำสุดยังคงคำนวณเป็น ” Inf ” แต่เราไม่ได้รับข้อความเตือนใดๆ ในครั้งนี้
วิธีที่ 2: กำหนดฟังก์ชันแบบกำหนดเอง
อีกวิธีหนึ่งในการหลีกเลี่ยงข้อความเตือนคือการกำหนดฟังก์ชันแบบกำหนดเองที่จะคำนวณค่าต่ำสุดเฉพาะเมื่อความยาวของเวกเตอร์มากกว่าศูนย์ มิฉะนั้นจะส่งคืนค่า ” Inf “:
#define vector with no values
data <- numeric(0)
#define custom function to calculate min
custom_min <- function (x) { if (length(x)>0) min(x) else Inf}
#use custom function to calculate min
custom_min(data)
[1] Lower
โปรดทราบว่าค่าต่ำสุดจะคำนวณเป็น ” Inf ” และเราไม่ได้รับข้อความเตือนใดๆ
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้อธิบายวิธีแก้ไขข้อผิดพลาดทั่วไปอื่น ๆ ใน R:
วิธีแก้ไขใน R: dim(X) ต้องมีความยาวเป็นบวก
วิธีแก้ไขใน R: ชื่อไม่ตรงกับชื่อก่อนหน้า
วิธีแก้ไขใน R: ความยาวของวัตถุที่ยาวกว่าไม่ใช่ผลคูณของความยาวของวัตถุที่สั้นกว่า
วิธีแก้ไขใน R: คอนทราสต์ใช้ได้กับปัจจัยที่มี 2 ระดับขึ้นไปเท่านั้น