Como corrigir: se você usar todos os valores escalares, precisará passar um índice
Um erro que você pode encontrar ao usar pandas é:
ValueError: If using all scalar values, you must pass an index
Este erro ocorre quando você tenta criar um DataFrame do pandas passando todos os valores escalares, mas também não consegue passar um índice.
O exemplo a seguir mostra como corrigir esse erro na prática.
Como reproduzir o erro
Suponha que estejamos tentando criar um DataFrame do pandas a partir de vários valores escalares:
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
Estamos recebendo um erro porque passamos apenas valores escalares para o DataFrame, mas não conseguimos passar um índice.
Como corrigir o erro
Aqui estão três métodos que você pode usar para corrigir esse erro:
Método 1: transformar valores escalares em uma lista
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
Método 2: passar valores escalares e índice de sucesso
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
Método 3: coloque valores escalares no dicionário
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
Observe que cada método produz o mesmo DataFrame.
Recursos adicionais
Os tutoriais a seguir explicam como corrigir outros erros comuns em Python:
Como corrigir: Nenhum módulo chamado pandas
Como corrigir: nenhum módulo chamado numpy
Como corrigir: as colunas se sobrepõem, mas nenhum sufixo é especificado
Como corrigir: SettingWithCopyWarning em Pandas