해결 방법: 모든 스칼라 값을 사용하는 경우 인덱스를 전달해야 합니다.


pandas를 사용할 때 발생할 수 있는 오류는 다음과 같습니다.

 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라는 모듈이 없습니다.
수정방법: 열이 겹치는데 접미사가 지정되지 않음
수정 방법: Pandas에서 SettingWithCopyWarning

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다