DataFrame
텍스트 데이터가 포함 된 Python Pandas 개체가 있습니다. 내 문제는 to_html()
함수를 사용할 때 출력의 문자열이 잘린다는 것입니다.
예를 들면 :
import pandas
df = pandas.DataFrame({'text': ['Lorem ipsum dolor sit amet, consectetur adipiscing elit.']})
print (df.to_html())
출력은 다음에서 잘립니다. adapis...
<table border="1" class="dataframe">
<thead>
<tr style="text-align: right;">
<th></th>
<th>text</th>
</tr>
</thead>
<tbody>
<tr>
<th>0</th>
<td> Lorem ipsum dolor sit amet, consectetur adipis...</td>
</tr>
</tbody>
</table>
SO에 대한 관련 질문이 있지만 자리 표시 자 및 검색 / 바꾸기 기능을 사용하여 HTML을 후 처리하므로 피하고 싶습니다.
이 문제에 대한 더 간단한 해결책이 있습니까? 문서 에서 관련 내용을 찾을 수 없습니다 .
답변
당신이보고있는 것은 표시 목적으로 만 출력을 자르는 팬더입니다.
기본값 max_colwidth
은 현재 표시되는 50입니다.
이 값을 원하는대로 설정하거나 -1로 설정하여 효과적으로 해제 할 수 있습니다.
pd.set_option('display.max_colwidth', -1)
이에 대해 조언하지만 콘솔이나 ipython에서 쉽게 표시 할 수있는 것으로 설정하는 것이 좋습니다.
옵션 목록은 http://pandas.pydata.org/pandas-docs/stable/options.html 에서 찾을 수 있습니다.
답변
그것이 pd.set_option('display.max_colwidth', -1)
실제로 유일한 옵션 인 것 같습니다 . 데이터 프레임이 콘솔에 표시되는 방식의 되돌릴 수없는 전역 변경을 방지하려면 다음과 같이 이전 설정을 변수에 저장하고 사용 직후에 복원 할 수 있습니다.
old_width = pd.get_option('display.max_colwidth')
pd.set_option('display.max_colwidth', -1)
open('some_file.html', 'w').write(some_data.to_html())
pd.set_option('display.max_colwidth', old_width)