Imprimer de très longue chaîne complètement dans les pandas dataframe
J'ai du mal avec ce qui semble très simple.J'ai une pandas bloc de données contenant de très longue chaîne.
df = pd.DataFrame({'one' : ['one', 'two',
'This is very long string very long string very long string veryvery long string']})
Maintenant quand j'essaye d'imprimer le même, je ne vois pas la chaîne complète, je préfère voir une partie seulement de la chaîne.
J'ai essayé les options suivantes
- à l'aide de
print(df.iloc[2])
- à l'aide de
to_html
- à l'aide de
to_string
- L'un des stackoverflow réponse suggéré d'augmenter la largeur de la colonne par
à l'aide de pandas option d'affichage, cela ne fonctionne pas non plus. - J'ai aussi fait de ne pas obtenir comment
set_printoptions
va m'aider.
Toutes les idées apprécié. Semble très simple, mais pas en mesure de l'obtenir!
InformationsquelleAutor Yantraguru | 2015-04-27
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser
options.display.max_colwidth
pour spécifier que vous souhaitez en voir plus dans la représentation par défaut:Et en effet, si vous voulez juste pour inspecter une valeur, en y accédant (comme un scalaire, non pas comme une ligne comme
df.iloc[2]
ne) vous aussi à la chaîne:Utilisation
pd.set_option('display.max_colwidth', -1)
automatique des retours à la ligne (et multi-ligne de cellules.Cette est une excellente ressource sur la façon d'utiliser jupyters d'affichage avec des pandas au maximum.
Un autre, assez simple d'approche est à la liste des appels de fonction:
Pas la peine de mentionner, ce n'est pas bon pour le couvent de la liste de l'ensemble des colonnes, mais pour une simple ligne - pourquoi ne pas
Un autre moyen plus simple pour imprimer à l'ensemble de la chaîne est d'appeler
values
sur le dataframe.La Sortie sera
Est-ce ce que vous vouliez faire ?
La façon dont j'ai souvent à faire face avec la situation que vous décrivez est d'utiliser le
.to_csv()
méthode et d'écrire sur la sortie standard:Mise à jour: il devrait maintenant être possible de l'utiliser juste
None
au lieu desys.stdout
avec les mêmes effets!Cela devrait dump l'ensemble du dataframe, y compris l'ensemble de toutes les chaînes. Vous pouvez utiliser le to_csv paramètres pour configurer les séparateurs de colonnes, si l'indice est imprimé, etc. Il sera moins joli que le rendu correctement si.
J'ai posté à l'origine en réponse à une certaine question liée à Sortie de données de toutes les colonnes dans un dataframe dans les pandas