[PYTHON] L'astuce de Jupyter

Qu'est-ce que c'est

Dans Jupyter de Python3 (bloc-notes IPython), nous allons vous montrer comment faire ce qui suit.

--Affichez sans omettre le grand DataFrame des pandas --Déploiement du générateur -Large la largeur du cahier

Préparation

Tout d'abord, installez more-itertools.

bash


pip install more-itertools

Ensuite, procédez comme suit: Vous pouvez également placer un fichier avec le contenu suivant dans <répertoire de l'utilisateur> /.ipython/profile_default/startup.

jupyter


import IPython.core.getipython
from more_itertools import chunked
ip = IPython.core.getipython.get_ipython()
class ChunkedDataFrame:
    def __init__(self, *args): self.df, self.n, self.m = args
    def _repr_html_(self):
        return ('' if not isinstance(self.df, pd.DataFrame) else
            '\n'.join(self.df.iloc[:self.m, r]._repr_html_()
                      for r in chunked(range(self.df.shape[1]), self.n)))
def C_impl(self, args):
    return ChunkedDataFrame(_, *[int(i) for i in (args+' 12 5').split()[:2]])
def L_impl(self, args):
    print(list(_))
if ip:
    ip.define_magic('C', C_impl)
    ip.define_magic('L', L_impl)

Afficher le grand DataFrame des pandas sans omettre

Affichons un DataFrame factice.

jupyter


import numpy as np, pandas as pd
a = pd.DataFrame(np.random.randint(0, 100, (3, 24)))
a
0 1 2 3 4 5 6 7 8 9 ... 14 15 16 17 18 19 20 21 22 23
0 0 30 60 68 53 81 60 10 49 28 ... 49 84 24 92 6 54 52 60 52 71
1 18 86 70 14 10 51 94 10 9 46 ... 90 81 22 65 50 93 28 83 71 22
2 62 58 42 79 83 71 22 44 7 52 ... 54 63 93 14 8 54 55 73 0 26

Le milieu est omis. Après l'affichage du DataFrame, exécutez comme suit.

jupyter


%C
0 1 2 3 4 5 6 7 8 9 10 11
0 0 30 60 68 53 81 60 10 49 28 78 93
1 18 86 70 14 10 51 94 10 9 46 14 19
2 62 58 42 79 83 71 22 44 7 52 3 76
12 13 14 15 16 17 18 19 20 21 22 23
0 7 3 49 84 24 92 6 54 52 60 52 71
1 17 78 90 81 22 65 50 93 28 83 71 22
2 37 28 54 63 93 14 8 54 55 73 0 26

Il est affiché en 12 colonnes. Si vous souhaitez modifier le nombre de colonnes, vous pouvez le spécifier comme "% C 8". Affichons à nouveau le DataFrame, puis réessayons.

jupyter


a

jupyter


%C 8
0 1 2 3 4 5 6 7
0 80 61 53 28 36 56 94 72
1 41 75 74 58 86 82 92 26
2 16 40 97 14 73 54 33 87
8 9 10 11 12 13 14 15
0 81 20 16 37 39 5 8 34
1 4 0 43 16 5 46 25 25
2 60 42 72 43 44 70 58 42
16 17 18 19 20 21 22 23
0 71 41 60 32 69 79 23 79
1 4 71 92 31 25 26 6 3
2 61 10 35 81 50 60 68 81

Vous pouvez également modifier le nombre de lignes avec le deuxième argument.

jupyter


a

jupyter


%C 8 2
0 1 2 3 4 5 6 7
0 80 61 53 28 36 56 94 72
1 41 75 74 58 86 82 92 26
8 9 10 11 12 13 14 15
0 81 20 16 37 39 5 8 34
1 4 0 43 16 5 46 25 25
16 17 18 19 20 21 22 23
0 71 41 60 32 69 79 23 79
1 4 71 92 31 25 26 6 3

Déploiement du générateur

Si vous regardez le générateur tel quel, vous ne pouvez pas voir le contenu. Ce serait bien de dire "list (_)", mais j'ai essayé de n'utiliser que 2 caractères.

jupyter


(i for i in range(10))
>>>
<generator object <genexpr> at 0x000000000XXXX>

jupyter


%L
>>>
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

Élargissez la largeur du cahier

jupyter


%%HTML
<style>
    div#notebook-container    { width: 95%; }
    div#menubar-container     { width: 65%; }
    div#maintoolbar-container { width: 99%; }
</style>

Masquer l'index DataFrame

jupyter


df.style.set_table_styles([{'selector': 'tbody th', 'props': [('visibility','hidden')]}])

référence

―― Dans IPython, quand j'ai essayé de voir la valeur, c'était un générateur, donc je l'ai inventé quand j'étais frustré.

c'est tout

Recommended Posts

L'astuce de Jupyter
3 astuces du notebook Jupyter (Python)
Jupyter commence
Le tour de Jupyter 4
Extensions Jupyter NB
Astuce de Jupyter 5
Astuce de Jupyter 3
Le tour de Jupyter 2
Jupyter Notebook: 4 trucs et astuces banals
Installation de Jupyter
Astuce Python
Erreur d'installation de Jupyter
Mémo Jupyter Notebook
Présentation de Jupyter Notebook
Note d'étude Jupyter_006
Jupyter Lab commence
Gérer le processus Jupyter
Puissant ordinateur portable Jupyter
Golang avec Jupyter
Jupyter sur AWS
Note d'étude Jupyter_002
Mot de passe du notebook Jupyter
Construire Jupyter Hub
Mémo Jupyter Notebook
Note d'étude Jupyter_008
Note d'étude Jupyter_004
configuration de jupyter qtconsole
Étude Jupyter note_001
Note d'étude Jupyter_003
Note d'étude Jupyter_007
Note d'étude Jupyter_005