본문 바로가기
파이썬 데이터분석

파이썬 DataFrame.pivot() takes 1 positional argument but 4 were given 에러

by 데이터스토리 2023. 11. 30.
반응형

파이썬 작업 중 아래와 같은 에러가 발생했다.

TypeError: DataFrame.pivot() takes 1 positional argument but 4 were given

 

 

나는 heatmap 을 그리고 싶었다. heatmap 을 그리기 위한 데이터는 피봇과 같은 형식의 데이터여야 했다. 그래서 아래와 같은 코드로 작업을 했다.

결과는 Heatmap 에 가지도 못했다. pivot에서 막혀버렸다.

 
 

파이썬 실행 코드

 

아래 코드를 실행시켰을 때 나타나는 에러였다.

# 라이브러리를 import
import seaborn as sns

# titanic 데이터셑을 로딩하여 titanic 변수에 넣었다. 
# titanic변수는 데이터프레임이 되었다.

titanic = sns.load_dataset("titanic")


t01 = titanic.pivot("survived", "pclass","fare")
 
 
실행결과는 아래와 같다.
에러메세지
에러메세지
 
 

파이썬 에러 해결

 

반응형

 

문제는 간단하게 해결되었다.

df.pivot() 이 아닌 df.pivot_table() 으로 하니 해결이 되었다.

괄호안에는 "(index='survived', columns='pclass', values='fare')"를 넣어주어야 한다.

 

# pivot을 위해서 df.pivot_table()을 적용했다.

t01 = titanic.pivot_table(index='survived', columns='pclass', values='fare')

 

이제 Heatmap 을 그려보자

 

# Heatmap 그래프 그리기

sns.heatmap(t01)

 

이렇게 해서 에러인 "DataFrame.pivot() takes 1 positional argument but 4 were given" 에러를 해겷했다. df.pivot()이 아닌 df.pivot_table90을 사용해야 한다는 것을 알았다.

 

 

>>  Unicode 에러가 발생하는 경우가 발생할 수 있다. 아래 포스팅에서 알아보자

 

 

[파이썬] (unicode error) 'unicodeescape' codec can't decode bytes

변수에서 파일위치를 배치한 부분에서 에러가 발생했다. 그림의 하단에 있는 "SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape" 이다. "... truncated \UXXXXXXXX...

twdatastory.tistory.com

 

 

 

반응형