วิธีแก้ไข: หากใช้ค่าสเกลาร์ทั้งหมด คุณจะต้องผ่านดัชนี
ข้อผิดพลาดที่คุณอาจพบเมื่อใช้นุ่นคือ:
ValueError: If using all scalar values, you must pass an index
ข้อผิดพลาดนี้เกิดขึ้นเมื่อคุณพยายามสร้าง DataFrame แพนด้าโดยส่งค่าสเกลาร์ทั้งหมด แต่ยังไม่สามารถส่งดัชนีได้
ตัวอย่างต่อไปนี้แสดงวิธีการแก้ไขข้อผิดพลาดนี้ในทางปฏิบัติ
วิธีการทำซ้ำข้อผิดพลาด
สมมติว่าเรากำลังพยายามสร้าง DataFrame แพนด้าจากค่าสเกลาร์หลายค่า:
import pandas as pd #define scalar values a = 1 b = 2 c = 3 d = 4 #attempt to create DataFrame from scalar values df = pd. DataFrame ({' A ':a,' B ':b,' C ':c,' D ':d}) ValueError: If using all scalar values, you must pass an index
เราได้รับข้อผิดพลาดเนื่องจากเราส่งเฉพาะค่าสเกลาร์ไปยัง DataFrame แต่เราไม่สามารถส่งดัชนีได้
วิธีการแก้ไขข้อผิดพลาด
ต่อไปนี้เป็นสามวิธีที่คุณสามารถใช้แก้ไขข้อผิดพลาดนี้:
วิธีที่ 1: แปลงค่าสเกลาร์ให้เป็นรายการ
import pandas as pd
#define scalar values
a = 1
b = 2
c = 3
d = 4
#create DataFrame by transforming scalar values to list
df = pd. DataFrame ({' A ':[a], ' B ':[b], ' C ':[c], ' D ':[d]})
#view DataFrame
df
A B C D
0 1 2 3 4
วิธีที่ 2: ส่งผ่านค่าสเกลาร์และดัชนีความสำเร็จ
import pandas as pd
#define scalar values
a = 1
b = 2
c = 3
d = 4
#create DataFrame by passing scalar values and passing index
df = pd. DataFrame ({' A ': a, ' B ': b, ' C ': c, ' D ': d}, index=[ 0 ])
#view DataFrame
df
A B C D
0 1 2 3 4
วิธีที่ 3: ใส่ค่าสเกลาร์ลงในพจนานุกรม
import pandas as pd
#define scalar values
a = 1
b = 2
c = 3
d = 4
#define dictionary of scalar values
my_dict = {' A ':1, ' B ':2, ' C ':3, ' D ':4}
#create DataFrame by passing dictionary wrapped in a list
df = pd. DataFrame ([my_dict])
#view DataFrame
df
A B C D
0 1 2 3 4
โปรดทราบว่าแต่ละวิธีจะสร้าง DataFrame เดียวกัน
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีแก้ไขข้อผิดพลาดทั่วไปอื่นๆ ใน Python:
วิธีแก้ไข: ไม่มีโมดูลชื่อแพนด้า
วิธีแก้ไข: ไม่มีโมดูลชื่อ numpy
วิธีแก้ไข: คอลัมน์ซ้อนทับกันแต่ไม่ได้ระบุส่วนต่อท้าย
วิธีแก้ไข: การตั้งค่า WithCopyWarning ใน Pandas