วิธีแก้ไขใน r: 'x' ต้องเป็นตัวเลข


ข้อผิดพลาดที่คุณอาจพบใน R คือ:

 Error in hist.default(data): 'x' must be numeric

ข้อผิดพลาดนี้เกิดขึ้นเมื่อคุณพยายามสร้างฮิสโตแกรมสำหรับตัวแปรที่ไม่ใช่ตัวเลข

บทช่วยสอนนี้จะอธิบายวิธีแก้ไขข้อผิดพลาดนี้อย่างชัดเจน

วิธีการทำซ้ำข้อผิดพลาด

สมมติว่าเรากำลังพยายามสร้างฮิสโตแกรมสำหรับเวกเตอร์ข้อมูลต่อไปนี้:

 #definevector
data <- c('1.2', '1.4', '1.7', '1.9', '2.2', '2.5', '3', '3.4', '3.7', '4.1')

#attempt to create histogram to visualize distribution of values in vector
hist(data)

Error in hist.default(data): 'x' must be numeric

เราได้รับข้อผิดพลาดเนื่องจาก ข้อมูล ในปัจจุบันไม่ใช่เวกเตอร์ตัวเลข เราสามารถยืนยันสิ่งนี้ได้โดยตรวจสอบคลาส:

 #check class
class(data)

[1] “character”

ปัจจุบัน ข้อมูล เป็นเวกเตอร์อักขระ

วิธีการแก้ไขข้อผิดพลาด

วิธีที่ง่ายที่สุดในการแก้ไขข้อผิดพลาดนี้คือการใช้ as.numeric() เพื่อแปลงเวกเตอร์ของเราเป็นตัวเลข:

 #convert vector from character to numeric
data_numeric <- as. numeric (data)

#create histogram
hist(data_numeric)

โปรดทราบว่าเราไม่ได้รับข้อผิดพลาดและเราสามารถสร้างฮิสโตแกรมได้เนื่องจากเวกเตอร์ของเราเป็นตัวเลขแล้ว

เราสามารถตรวจสอบสิ่งนี้ได้โดยการตรวจสอบคลาส:

 #check class
class(data_numeric)

[1] "digital"

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

บทช่วยสอนต่อไปนี้จะอธิบายวิธีแก้ไขข้อผิดพลาดทั่วไปอื่น ๆ ใน R:

วิธีแก้ไข: NAs ถูกแนะนำโดย Coercion
วิธีแก้ไข: จำนวนดัชนีบนเมทริกซ์ไม่ถูกต้อง
วิธีแก้ไข: จำนวนสินค้าที่จะเปลี่ยนไม่ใช่ผลคูณของความยาวในการเปลี่ยน

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

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