Jupyter 노트북에서 Pandas DataFrame을 표로 출력하는 방법
본 가이드에서는 Jupyter 노트북에서 Pandas DataFrame을 간단하게 표로 출력하는 두 가지 방법을 소개합니다.
Pandas의 to_string() 메서드 사용:
import pandas as pd
# 데이터프레임 생성
df = pd.DataFrame({'name': ['Alice', 'Bob', 'Charlie'], 'age': [30, 25, 22]})
# DataFrame을 표 형식으로 출력
print(df.to_string())
위 코드는 다음과 같은 결과를 출력합니다.
name age
0 Alice 30
1 Bob 25
2 Charlie 22
to_string()
메서드는 기본적인 표 형식으로 DataFrame을 출력합니다. 옵션을 추가하여 출력 형식을 더욱 자세하게 제어할 수 있습니다. 예를 들어, 열 너비 조정, 소수 자릿수 설정, 특정 행 또는 열만 출력하는 등이 가능합니다.
IPython의 display() 함수 사용:
import pandas as pd
from IPython.display import display
# 데이터프레임 생성
df = pd.DataFrame({'name': ['Alice', 'Bob', 'Charlie'], 'age': [30, 25, 22]})
# DataFrame을 표 형식으로 출력
display(df)
위 코드는 to_string()
메서드와 동일한 결과를 출력합니다.
display()
함수는 다양한 데이터 형식을 Jupyter 노트북에서 표시하는 데 사용할 수 있는 유연한 함수입니다. DataFrame 외에도 NumPy 배열, 텍스트, 이미지 등을 표시하는 데 활용할 수 있습니다.
참고:
- Jupyter 노트북에서 DataFrame을 출력할 때 더 많은 제어 기능을 원한다면
HTML
,LaTeX
또는Excel
과 같은 다른 출력 형식을 사용할 수 있습니다. - Pandas 라이브러리에는 DataFrame을 다루는 다양한 함수와 메서드가 제공됩니다. 자세한 내용은 Pandas 공식 문서를 참고하십시오.
추가 정보
Jupyter 노트북에서 Pandas DataFrame을 표로 출력하는 예제 코드
import pandas as pd
# 데이터 생성
data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [30, 25, 22, 27],
'city': ['Seoul', 'New York', 'Paris', 'Berlin']}
df = pd.DataFrame(data)
# 기본 출력
print(df.to_string())
# 옵션 사용
print("\n옵션 사용:")
print(df.to_string(index=False)) # 인덱스 출력 제외
print(df.to_string(columns=['name', 'age'])) # 특정 열만 출력
print(df.to_string(float_format='{:.2f}')) # 소수 자릿수 설정
출력:
name age city
0 Alice 30 Seoul
1 Bob 25 New York
2 Charlie 22 Paris
3 David 27 Berlin
옵션 사용:
name age
0 Alice 30
1 Bob 25
2 Charlie 22
3 David 27
name
0 Alice
1 Bob
2 Charlie
3 David
age
0 30.00
1 25.00
2 22.00
3 27.00
import pandas as pd
from IPython.display import display
# 데이터 생성
data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [30, 25, 22, 27],
'city': ['Seoul', 'New York', 'Paris', 'Berlin']}
df = pd.DataFrame(data)
# 기본 출력
display(df)
# 옵션 사용
display(df[["name", "age"]]) # 특정 열만 출력
display(df.style.set_precision(2)) # 소수 자릿수 설정
(출력은 위 코드와 동일하지만, Jupyter 노트북에서 직접 표로 출력됩니다.)
- 위 코드는 기본적인 예시이며, 더 많은 옵션을 사용하여 다양한 형식으로 DataFrame을 출력할 수 있습니다.
- Pandas 공식 문서 및 IPython 공식 문서에서 Pandas DataFrame과 IPython display 함수에 대한 자세한 정보를 확인할 수 있습니다.
Jupyter 노트북에서 Pandas DataFrame을 표로 출력하는 대체 방법
HTML 출력:
import pandas as pd
from IPython.display import display
# 데이터 생성
data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [30, 25, 22, 27],
'city': ['Seoul', 'New York', 'Paris', 'Berlin']}
df = pd.DataFrame(data)
# HTML 형식으로 출력
display(df.to_html())
<table>
<thead>
<tr>
<th></th>
<th>name</th>
<th>age</th>
<th>city</th>
</tr>
</thead>
<tbody>
<tr>
<th>0</th>
<td>Alice</td>
<td>30</td>
<td>Seoul</td>
</tr>
<tr>
<th>1</th>
<td>Bob</td>
<td>25</td>
<td>New York</td>
</tr>
<tr>
<th>2</th>
<td>Charlie</td>
<td>22</td>
<td>Paris</td>
</tr>
<tr>
<th>3</th>
<td>David</td>
<td>27</td>
<td>Berlin</td>
</tr>
</tbody>
</table>
LaTeX 출력:
import pandas as pd
from IPython.display import display
# 데이터 생성
data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [30, 25, 22, 27],
'city': ['Seoul', 'New York', 'Paris', 'Berlin']}
df = pd.DataFrame(data)
# LaTeX 형식으로 출력
display(df.to_latex())
\begin{tabular}{l|rrr}
\multicolumn{1}{r}{} & \multicolumn{1}{c}{name} & \multicolumn{1}{c}{age} & \multicolumn{1}{c}{city} \\
\cline{2-4}
0 & Alice & 30 & Seoul \\
1 & Bob & 25 & New York \\
2 & Charlie & 22 & Paris \\
3 & David & 27 & Berlin \\
\end{tabular}
Excel 출력:
import pandas as pd
# 데이터 생성
data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [30, 25, 22, 27],
'city': ['Seoul', 'New York', 'Paris', 'Berlin']}
df = pd.DataFrame(data)
# Excel 형식으로 출력
df.to_excel('output.xlsx') # 'output.xlsx'라는 이름으로 Excel 파일 저장
HTML
,LaTeX
,Excel
출력은 Jupyter 노트북 내에서 직접 표시되는 것이 아니라, 파일 형식으로 저장됩니다.- 각 출력 형식에 대한 더 많은 옵션과 사용법은 Pandas 공식 문서를 참고하십시오.
추가 팁
- Jupyter 노트북에서 다양한 스타일링 옵션을 사용하여 DataFrame을 더욱 매력적으로 표현할 수 있습니다. 예를 들어, 열 너비 조정, 색상 변경, 테두리 추가 등이 가능합니다. Pandas의
style
속성을 활용하면 다양한 스타일링을 적용할 수 있습니다. - Jupyter 노트북 확장 모듈을 사용하여 DataFrame 출력 기능을 더욱 강화할 수 있습니다. 예를 들어,
tabulate
확장 모듈을 사용하면 DataFrame을 더욱 정교하게 표시할 수 있습니다.
pandas printing jupyter-notebook