J'utilise PyCharm 2016.2.1. Lorsque j'essaie d'afficher un Pandas dataframe via la fonctionnalité nouvellement ajoutée `` View as DataFrame '' dans le débogueur, cela fonctionne comme prévu pour un petit DataFrame (par exemple 4x4).
Cependant, lorsque j'essaie d'afficher un DataFrame (généré par un script personnalisé) de ~ 10 000 lignes x ~ 50 colonnes, j'obtiens le message: "Rien à afficher".
Lorsque j'exécute le même script (qui génère le DataFrame) dans Spyder, je suis capable de le voir, donc je suis presque sûr que ce n'est pas une erreur dans mon script.
Est-ce que quelqu'un sait s'il existe une taille maximale pour les DataFrames qui peut être visualisée dans PyCharm, et s'il existe un moyen de changer cela?
Il semble que la taille maximale autorisée soit de 1000 x 15, car dans certains cas, elle est tronquée à cette taille (lorsque le nombre de lignes est trop grand, mais lorsqu'il y a trop de colonnes, pycharm dit simplement `` rien à afficher '').
Néanmoins, je voudrais savoir s'il existe un moyen d'augmenter le nombre maximal de lignes et de colonnes autorisées visibles via la visionneuse DataFrame.
J'ai rencontré le même problème avec PyCharm 2018.2.2
. La raison était d'avoir un caractère spécial dans le nom d'une colonne comme mentionné par Yunzhao.
Si vous avez un nom de colonne comme "R&D" le changer en "RnD" résoudra le problème. C'est vraiment étrange que JetBrains n'ait pas résolu ce problème depuis plus de 2 ans.
Comme vous l'avez dit dans votre montage, le nombre de colonnes est limité (sur mon PC, bien qu'il soit bien inférieur à 15). Cependant, vous pouvez voir le tout en tapant:
df.values
Il vous montrera l'ensemble de la trame de données, mais sans les noms des colonnes.
Modifier:
Pour afficher également les noms des colonnes:
np.vstack([df.columns, df.values])
J'ai rencontré les mêmes problèmes. J'ai pensé que c'était à cause des caractères spéciaux dans les noms de colonnes (dans mon cas) Dans mon cas, j'ai "%" dans le nom de la colonne, puis il n'affiche pas les données dans View as DataFrame. Après l'avoir supprimé, tout était correctement affiché. Veuillez vérifier si vous avez également des caractères spéciaux dans les noms des colonnes.
Dans le cas où vous n'avez pas strictement besoin d'utiliser les fonctionnalités fournies par le visualiseur DataFrame, vous pouvez imprimer l'intégralité du DataFrame dans la fenêtre de sortie, en utilisant:
def print_full(x):
pd.set_option('display.max_rows', len(x))
print(x)
pd.reset_option('display.max_rows')
Dans ma situation, le problème est dû à deux mêmes noms de colonne dans mon dataframe. Vérifiez-le par: df.columns.shape[0] == len(set(df.columns))
J'utilise PyCharm 2019.1.1 (Community Edition). Et quand j'ai utilisé un clic droit sur "Afficher en tant que DataFrame". Je reçois le message: "Rien à montrer".
Mais lorsque je clique sur le bouton de queue d'objet "... Afficher en tant que DataFrame", cela fonctionne.
Je découvre que mon problème est que mon objet DataFrame est un paramètre d'objet. Cliquez avec le bouton droit sur "Afficher en tant que DataFrame" ne transfère pas le nom de la classe, vous devez saisir le nom de la classe et le nom du paramètre.
L'espoir peut aider quelqu'un.
Cela peut être utile pour certaines personnes rencontrant un problème similaire:
Depuis août 2019, SciView
dans PyCharm a du mal à afficher les DataFrame
qui contiennent le type entier nullable , voir - problème sur JetBrains
J'utilise PyCharm 2019.1.1 (Community Edition) et j'exécute Python 3.7. Lorsque je clique pour la première fois sur "Afficher en tant que DataFrame", il semble y avoir le même problème, mais si j'attends quelques secondes le contenu apparaît. Pour moi, c'est une question de chargement.
Par souci d'exhaustivité: je suis confronté au même problème, car certains éléments de l'index de la trame de données contiennent un point d'interrogation "?". Il faut également éviter cela si vous souhaitez toujours utiliser la visionneuse de données. La visionneuse de données fonctionnait toujours, si les chaînes d'index contiennent des hachages ou des signes inférieurs à/supérieurs à.