วิธีแก้ไขใน r: มีคอลัมน์มากกว่าชื่อคอลัมน์
ข้อผิดพลาดที่คุณอาจพบใน R คือ:
Error in read.table("my_data.csv", header=TRUE):
more columns than column names
ข้อผิดพลาดนี้มักเกิดขึ้นเมื่อคุณพยายามอ่านไฟล์ CSV ใน R โดยใช้ฟังก์ชัน read.table() และไม่ได้ระบุว่าตัวคั่น ( sep ) ควรเป็นเครื่องหมายจุลภาค
บทช่วยสอนนี้จะอธิบายวิธีแก้ไขข้อผิดพลาดนี้อย่างชัดเจน
วิธีการทำซ้ำข้อผิดพลาด
สมมติว่าเรามีไฟล์ CSV ต่อไปนี้ชื่อ Basketball_data.csv :

ตอนนี้ สมมติว่าเราพยายามนำเข้าไฟล์นี้ไปยัง R โดยใช้ฟังก์ชัน read.table() :
#attempt to import CSV into data frame
df <- read. table ("basketball_data.csv", header= TRUE )
Error in read.table("basketball_data.csv", header = TRUE):
more columns than column names
เราได้รับข้อผิดพลาดเนื่องจากเราไม่สามารถระบุว่าค่าในไฟล์ของเราถูกคั่นด้วยเครื่องหมายจุลภาค
เนื่องจากมีช่องว่างระหว่างค่าในแถวของกรอบข้อมูลแต่ไม่มีช่องว่างในส่วนหัว ฟังก์ชัน read.table() จึงคิดว่ามีเพียงคอลัมน์เดียว
นี่บอกเราว่ามีคอลัมน์มากกว่าชื่อคอลัมน์
วิธีการแก้ไขข้อผิดพลาด
วิธีแก้ไขข้อผิดพลาดนี้คือเพียงใช้ sep=”” เมื่อนำเข้าไฟล์:
#import CSV file into data frame
df <- read. table ("basketball_data.csv", header= TRUE , sep=",")
#view data frame
df
team points rebounds
1 to 22 10
2 B 14 9
3 C 29 6
4 D 30 2
เราสามารถนำเข้าไฟล์ CSV ได้สำเร็จโดยไม่มีข้อผิดพลาดใดๆ เนื่องจากเราได้ระบุว่าค่าในไฟล์นั้นคั่นด้วยเครื่องหมายจุลภาค
หรืออีกทางหนึ่ง เราสามารถใช้ read.csv() เพื่อนำเข้าไฟล์ได้ หากเรารู้ว่าเป็นไฟล์ CSV:
#import CSV file into data frame
df <- read. csv ("basketball_data.csv", header= TRUE )
#view data frame
df
team points rebounds
1 'A' 22 10
2 'B' 14 9
3 'C' 29 6
4 'D' 30 2
โปรดทราบว่าครั้งนี้เรายังไม่ได้รับข้อผิดพลาดใดๆ เมื่อนำเข้าไฟล์ CSV
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้อธิบายวิธีแก้ไขข้อผิดพลาดทั่วไปอื่น ๆ ใน R:
วิธีแก้ไขใน R: ชื่อไม่ตรงกับชื่อก่อนหน้า
วิธีแก้ไขใน R: ความยาวของวัตถุที่ยาวกว่าไม่ใช่ผลคูณของความยาวของวัตถุที่สั้นกว่า
วิธีแก้ไขใน R: คอนทราสต์ใช้ได้กับปัจจัยที่มี 2 ระดับขึ้นไปเท่านั้น