Як виправити: якщо ви використовуєте всі скалярні значення, вам потрібно передати індекс
Помилка, з якою ви можете зіткнутися під час використання панд:
ValueError: If using all scalar values, you must pass an index
Ця помилка виникає, коли ви намагаєтеся створити pandas DataFrame, передаючи всі скалярні значення, але також не можете передати індекс.
У наступному прикладі показано, як виправити цю помилку на практиці.
Як відтворити помилку
Припустімо, ми намагаємося створити pandas 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:
Як виправити: немає модуля з назвою pandas
Як виправити: немає модуля з назвою numpy
Як виправити: стовпці перекриваються, але суфікс не вказано
Як виправити: SettingWithCopyWarning у Pandas