[python] pandas dataframe에서 html로 변환 할 때 html로 전체 (잘리지 않은) 데이터 프레임 정보를 표시하는 방법은 무엇입니까?
DataFrame.to_html
함수를 사용하여 팬더 데이터 프레임을 HTML 출력으로 변환했습니다 . 이것을 별도의 html 파일로 저장하면 파일이 잘린 출력을 표시합니다.
예를 들어 TEXT 열에서
df.head(1)
표시됩니다
영화는 훌륭한 노력이었습니다 …
대신에
이 영화는이시기에 널리 퍼진 복잡한 사회적 감정을 해체하는 데 큰 노력을 기울였습니다.
이 판결은 화면에 친화적 인 거대한 팬더 데이터 프레임 형식의 경우에는 좋지만 데이터 프레임에 포함 된 완전한 테이블 형식 데이터를 표시하는 html 파일이 필요합니다. 이전 텍스트 스 니펫.
html 버전의 정보에서 TEXT 열의 각 요소에 대해 잘리지 않은 완전한 텍스트 데이터를 표시하려면 어떻게해야합니까? html 테이블에 완전한 데이터를 표시하기 위해 긴 셀을 표시해야한다고 생각하지만 이해하는 한 열 너비 매개 변수 만 DataFrame.to_html
함수에 전달할 수 있습니다 .
답변
display.max_colwidth
옵션을 -1
다음으로 설정하십시오 .
pd.set_option('display.max_colwidth', -1)
예를 들어, iPython에서는 정보가 50 자로 잘립니다. 초과하는 것은 생략됩니다.
display.max_colwidth
옵션 을 설정하면 정보가 완전히 표시됩니다.
답변
pd.set_option('display.max_columns', None)
id
(두 번째 인수)는 열을 완전히 표시 할 수 있습니다.
답변
pd.set_option('display.max_columns', None)
표시된 최대 열 수를 설정하는 동안 옵션 pd.set_option('display.max_colwidth', -1)
은 각 단일 필드의 최대 너비를 설정합니다.
내 목적을 위해 나머지 코드에 영향을주지 않고 거대한 데이터 프레임을 완전히 인쇄하는 작은 도우미 함수를 작성했으며 부동 숫자를 다시 포맷하고 가상 디스플레이 너비를 설정합니다. 사용 사례에 맞게 채택 할 수 있습니다.
def print_full(x):
pd.set_option('display.max_rows', len(x))
pd.set_option('display.max_columns', None)
pd.set_option('display.width', 2000)
pd.set_option('display.float_format', '{:20,.2f}'.format)
pd.set_option('display.max_colwidth', None)
print(x)
pd.reset_option('display.max_rows')
pd.reset_option('display.max_columns')
pd.reset_option('display.width')
pd.reset_option('display.float_format')
pd.reset_option('display.max_colwidth')
답변
이 작업을 어둡게하는 사람들에게 적합합니다. 나는 dask에서 비슷한 옵션을 찾을 수 없었지만 팬더 용 동일한 노트북 에서이 작업을 간단하게 수행하면 dask에서도 작동합니다.
import pandas as pd
import dask.dataframe as dd
pd.set_option('display.max_colwidth', -1) # This will set the no truncate for pandas as well as for dask. Not sure how it does for dask though. but it works
train_data = dd.read_csv('./data/train.csv')
train_data.head(5)
답변
다음 코드는 아래 오류를 발생시킵니다.
pd.set_option('display.max_colwidth', -1)
FutureWarning : 음의 정수 전달은 버전 1.0에서 더 이상 사용되지 않으며 이후 버전에서는 지원되지 않습니다. 대신, 열 너비를 제한하지 않으려면 없음을 사용하십시오.
대신 다음을 사용하십시오.
pd.set_option('display.max_colwidth', None)
이것은 작업을 수행하고 버전 1.0 이후 의 판다 버전을 준수합니다 .