วิธีแก้ไขใน r: "ความสูง" ต้องเป็นเวกเตอร์หรือเมทริกซ์


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

 Error in barplot.default(df): 'height' must be a vector or a matrix

ข้อผิดพลาดนี้เกิดขึ้นเมื่อคุณพยายามใช้ฟังก์ชัน barplot() เพื่อสร้างกราฟแท่งใน R แต่คุณระบุชื่อของกรอบข้อมูลแทนชื่อของคอลัมน์ในกรอบข้อมูล

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

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

สมมติว่าเรามี data frame ต่อไปนี้ใน R:

 #create data frame
df <- data. frame (player=c('A', 'B', 'C', 'D', 'E'),
                 dots=c(17, 12, 8, 9, 25))

#view data frame
df

  player points
1 to 17
2 B 12
3 C 8
4 D 9
5 E 25

ตอนนี้ สมมติว่าเราลองใช้ฟังก์ชัน barplot() เพื่อสร้างแผนภูมิแท่ง:

 #attempt to create bar plot
barplot(df)

Error in barplot.default(df): 'height' must be a vector or a matrix

เราได้รับข้อผิดพลาดเนื่องจากเราระบุชื่อของกรอบข้อมูลในฟังก์ชัน barplot() แทนที่จะเป็นชื่อของคอลัมน์กรอบข้อมูล

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

วิธีที่ง่ายที่สุดในการแก้ไขข้อผิดพลาดนี้คือเพียงระบุชื่อของคอลัมน์ data frame ให้กับฟังก์ชัน barplot() :

 #create bar plot to visualize values in points column
barplot(df$points)

โปรดทราบว่าเราไม่ได้รับข้อผิดพลาดใดๆ ในครั้งนี้ เนื่องจากเราได้ระบุชื่อของคอลัมน์ data frame ให้กับฟังก์ชัน barplot()

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

 #create bar plot with labels
barplot(df$points, names=df$player, xlab=' Player ', ylab=' Points ')

แกน x แสดงชื่อผู้เล่นในขณะที่แกน y แสดงค่าคะแนนสำหรับผู้เล่นแต่ละคน

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

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

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

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

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