วิธีแก้ไขใน r: ไม่พบวัตถุ


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

 Error: object 'x' not found

ข้อผิดพลาดนี้มักเกิดขึ้นจากหนึ่งในสองสาเหตุ:

เหตุผลที่ 1 : คุณกำลังพยายามอ้างอิงวัตถุที่คุณไม่ได้สร้างขึ้น

เหตุผลที่ 2 : คุณกำลังรันโค้ดชิ้นหนึ่งโดยที่วัตถุไม่ได้ถูกกำหนดไว้ในส่วนนั้น

ตัวอย่างต่อไปนี้อธิบายวิธีการแก้ไขข้อผิดพลาดนี้ในแต่ละสถานการณ์เหล่านี้

ตัวอย่าง #1: ไม่พบวัตถุเมื่อไม่มีวัตถุ

สมมติว่าเราใช้รหัสต่อไปนี้เพื่อแสดงกรอบข้อมูลที่เราไม่ได้สร้าง:

 #create data frame
my_df <- data. frame (team=c('A', 'B', 'C', 'D', 'E'),
                    points=c(99, 90, 86, 88, 95),
                    assists=c(33, 28, 31, 39, 34),
                    rebounds=c(30, 28, 24, 24, 28))

#attempt to display data frame
my_data

Error: object 'my_data' not found

เราได้รับข้อผิดพลาดเนื่องจากไม่มีวัตถุ my_data

เราต้องพิมพ์ชื่อที่ถูกต้องของ data frame ที่เราสร้างขึ้นแทน:

 #display data frame
my_df

  team points assists rebounds
1 A 99 33 30
2 B 90 28 28
3 C 86 31 24
4 D 88 39 24
5 E 95 34 28

ครั้งนี้เราสามารถแสดง data frame ได้โดยไม่มีข้อผิดพลาดเนื่องจากเราใช้ชื่อที่ถูกต้อง

โปรดทราบว่าเรายังสามารถใช้ ls() เพื่อแสดงชื่อวัตถุทั้งหมดในสภาพแวดล้อมปัจจุบันของเรา และ มีอยู่ () เพื่อตรวจสอบว่ามีชื่อวัตถุเฉพาะอยู่หรือไม่:

 #display the names of all objects in environment
ls()

[1] "df" "my_df" "x"

#check if my_data exists
exists(' my_data ')

[1] FALSE

เราจะเห็นได้ว่า มีอยู่(‘my_data’) ส่งคืน FALSE ซึ่งเป็นสาเหตุที่เราได้รับข้อผิดพลาดเมื่อเราพยายามแสดงมัน

ตัวอย่าง #2: ไม่พบออบเจ็กต์เมื่อมีการเน้นโค้ดที่ไม่ถูกต้อง

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

ตัวอย่างเช่น ลองพิจารณาภาพหน้าจอต่อไปนี้ซึ่งเราไฮไลต์แถวที่ 3 ถึง 5 และพยายามคำนวณค่าเฉลี่ยของค่าที่ชื่อ x :

ไม่พบวัตถุข้อผิดพลาดใน R

เนื่องจากเราสร้างเวกเตอร์ชื่อ x ในบรรทัดที่ 2 เราจึงได้รับข้อผิดพลาดเนื่องจากเราไม่ได้สร้างเวกเตอร์นี้ในส่วนของโค้ดที่เราไฮไลต์

หากเราเน้นย้ำโค้ดทั้งหมดที่เราสนใจแทน เราจะไม่ได้รับข้อผิดพลาดใดๆ:

โปรดทราบว่าในครั้งนี้ RStudio จะแสดงค่าเฉลี่ยของเวกเตอร์ x โดยไม่มีข้อผิดพลาดใดๆ

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

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

วิธีแก้ไขใน R: ชื่อไม่ตรงกับชื่อก่อนหน้า
วิธีแก้ไขใน R: ความยาวของวัตถุที่ยาวกว่าไม่ใช่ผลคูณของความยาวของวัตถุที่สั้นกว่า
วิธีแก้ไขใน R: คอนทราสต์ใช้ได้กับปัจจัยที่มี 2 ระดับขึ้นไปเท่านั้น

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

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