Versuchen Sie, das Python Data Science-Handbuch ins Japanische zu übersetzen

Ergänzungen bei der Veröffentlichung ...

Python Data Science Handbuch
(Python Data Science Handbuch)

1. IPython: Python besser als Python
(IPython: Beyond Normal Python)

Es gibt viele Optionen für die Python-Entwicklungsumgebung, und ich frage mich oft, welche ich für meine Arbeit verwenden soll. Meine Antwort darauf überrascht manchmal die Leute. Meine Lieblingsumgebung ist es, Ipython und einen Texteditor zusammen zu verwenden. (In meinem Fall benutze ich Emacs und Atom entsprechend meiner Stimmung richtig) Ipython (kurz für Interactive Python) wurde 2001 von Fernando Perez als erweiterter Python-Interpreter entwickelt und hat sich zu einem Projekt entwickelt, das sich auf die Herstellung von "Werkzeugen für den gesamten Lebenszyklus des Forschungscomputers" konzentriert. Wenn Python die Engine für unsere datenwissenschaftlichen Aufgaben ist Ipython kann als interaktives Control Panel betrachtet werden.

Ipython ist eine nützliche interaktive Python-Oberfläche, bietet aber gleichzeitig viele nützliche (grammatikalische) (erweiterte) Funktionen. (Die folgenden sind besonders nützlich.) Darüber hinaus ist Ipython eng mit dem ** Jupyter-Projekt ** verbunden, das browserbasierte Notizbücher entwickelt, mit denen wir datenwissenschaftliche Ergebnisse entwickeln, zusammenarbeiten, teilen und präsentieren können. Ipython-Notizbücher sind ein Sonderfall der vielen Jupyter-Notizbücher, einschließlich Notizbücher für Julia, R und andere Programmiersprachen. Ein Beispiel für die Bequemlichkeit des Notebook-Formats ist, dass Sie sich nur die Seite ansehen müssen, die Sie gerade lesen. Dies liegt daran, dass alle Manuskripte in diesem Buch aus einer Reihe von Ipython-Notizbüchern bestehen.

IPython ist eine effektive Verwendung von Python für interaktives wissenschaftliches, datenintensives Computing. In diesem Kapitel werden zunächst einige der in der Datenwissenschaft nützlichen Funktionen von Ipython vorgestellt, insbesondere die Grammatik, die Ipython über die Grundfunktionen von Python hinaus bietet. Als nächstes betreten wir einige der nützlicheren Welten von "magischen Befehlen", die die täglichen Aufgaben beim Erstellen und Verwenden von Data Science-Programmen beschleunigen können. Abschließend werden wir einige der Notebook-Funktionen ansprechen, die uns helfen, die Daten zu verstehen und die Ergebnisse zu teilen.

Shell oder Notebook?

In diesem Kapitel werden zwei Verwendungszwecke für Ipython beschrieben. Ipython-Shell und Ipython-Notizbuch. Der größte Teil des in diesem Kapitel behandelten Inhalts ist für beide relevant, und die vorgestellten Beispiele wechseln je nachdem, was bequemer ist. Es gibt einige Teile, die nur für den einen oder anderen relevant sind, aber in diesem Fall werde ich es ausdrücklich angeben. Bevor wir beginnen, wollen wir uns mit dem Starten der Ipython-Shell und des Ipython-Notizbuchs befassen.

Starten Sie die Ipython-Shell

Dieses Kapitel ist nicht zum passiven Lernen gedacht (wie es bei den meisten Büchern der Fall ist). Während Sie dieses Kapitel lesen, empfehlen wir Ihnen, es selbst mit Grammatik und Werkzeugen zu versuchen. Das dadurch bereitgestellte Muskelgedächtnis ist weitaus nützlicher als das, was man einfach durch Lesen dieses Kapitels erhält. Geben Sie zunächst "ipython" in die Befehlszeile ein und starten Sie Ipython. Wenn Sie Anaconda oder EPD installiert haben, sollten Sie einen geeigneten Launcher haben.

Wenn Sie eingeben, sollte eine Eingabeaufforderung wie die folgende angezeigt werden:


IPython 4.0.1 -- An enhanced Interactive Python.
?         -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help      -> Python's own help system.
object?   -> Details about 'object', use 'object??' for extra details.
In [1]:

Jetzt können Sie weitermachen.

Starten Sie Jupyter Notebook

Jupyter Notebook ist eine browserbasierte IPython-Benutzeroberfläche mit zahlreichen dynamischen Anzeigefunktionen. Benutzer können nicht nur Python / IPython-Syntax ausführen, sondern auch formatierten Text, statische oder dynamische visuelle Effekte, Formeln, JavaScript-Widgets usw. in ihre Notizbücher aufnehmen. Darüber hinaus können diese Dokumente in einem Format gespeichert werden, das andere selbst erstellen können.

Sie können IPython-Notizbücher im Webbrowser-Fenster anzeigen und bearbeiten, müssen jedoch den Webbrowser mit dem Python-Prozess verbinden, um den Python-Code auszuführen. Dieser Prozess (auch als Kernel bezeichnet) kann gestartet werden, indem der folgende Code in der Shell ausgeführt wird.


$ jupyter notebook

Dieser Befehl startet einen lokalen Webserver, den Sie in Ihrem Browser sehen können. Ein Protokoll darüber, was dieser Server tut, wird sofort ausgespuckt. Wie nachstehend.


$ jupyter notebook
[NotebookApp] Serving notebooks from local directory: /Users/jakevdp/PythonDataScienceHandbook
[NotebookApp] 0 active kernels 
[NotebookApp] The IPython Notebook is running at: http://localhost:8888/
[NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).

Nach dem Ausführen dieses Befehls sollte der Standardbrowser automatisch geöffnet werden und Sie zu Ihrer lokalen URL weiterleiten. (Die tatsächliche Adresse hängt von der Umgebung ab.) Wenn der Browser nicht automatisch geöffnet wird, können Sie das Fenster manuell öffnen, indem Sie zur folgenden Adresse springen. (Http: // localhost: 8888 / in diesem Beispiel)

IPython-Hilfe und Dokumentation

Wenn Sie nicht beabsichtigen, die anderen Abschnitte in diesem Kapitel zu lesen, lesen Sie einfach diesen Abschnitt. Weil ich festgestellt habe, dass die hier diskutierten Tools am meisten zur Verbesserung von IPython für meinen Workflow beigetragen haben. Wenn eine technikorientierte Person von einem Freund, Familienmitglied oder Kollegen um Hilfe zu einem Computerproblem gebeten wird, weiß sie fast immer, wie sie zur Antwort kommt, so schnell sie die Antwort auf das Problem kennt. Dies ist sehr wichtig. Gleiches gilt für die Welt der Datenwissenschaft. Durchsuchbare Webressourcen wie Online-Dokumente, Mailinglistenthreads und StackOverflow-Antworten sind reich an Informationen. Auch wenn es (oder besonders) ein Thema ist, nach dem Sie in der Vergangenheit gesucht haben. Ein echter Experte zu werden bedeutet nicht so sehr, die Tools und Befehle zu erlernen, die in jeder Situation verwendet werden können, sondern wie effektiv eine Websuchmaschine Informationen finden kann, die Sie nicht kennen.

Eine der nützlichsten Funktionen von IPython / Jupyter besteht darin, die Lücke zwischen Benutzern und Dokumenttypen zu schließen und zu suchen, um die Aufgabe effizient zu erledigen. Während die Websuche immer noch dazu dient, Antworten auf komplexe Probleme zu liefern, kann eine überraschende Menge an Informationen nur über IPython abgerufen werden. Unten finden Sie ein Beispiel für eine Frage, die Ipython mit wenigen Tastenanschlägen beantworten kann. ・ Wie soll ich diese Funktion aufrufen? Was sind die Argumente und Optionen? -Was ist der Quellcode dieses Python-Objekts? -Was ist in diesem importierten Paket? Welche Attribute und Methoden haben Sie? Von hier aus werden die Tools von Ipython erläutert, mit denen Sie schnell auf diese Informationen zugreifen können. Das heißt "?", Um nach Dokumenten zu suchen, "??", um nach Quellcode zu suchen, und Tabulatortasten, um sie automatisch zu vervollständigen.

Zugriff auf Dokumente mit?

Die Sprache Python und sein Data Science-Ökosystem wurden speziell für Benutzer entwickelt. Eine der wichtigsten Überlegungen ist der Zugriff auf Dokumentation. Alle Python-Objekte enthalten Verweise auf Zeichenfolgen, die als Dokumentzeichenfolgen bezeichnet werden. Dies ist meistens eine kurze Zusammenfassung der Verwendung des Objekts. Python verfügt über eine integrierte Funktion, die auf die Informationen "help ()" zugreift und diese anzeigt. Wenn Sie beispielsweise die Dokumentation für die integrierte Funktion "len" anzeigen möchten, gehen Sie wie folgt vor:

In [1]: help(len)
Help on built-in function len in module builtins:

len(...)
    len(object) -> integer

    Return the number of items of a sequence or mapping.

Je nach Interpreter werden diese Informationen möglicherweise als Inline-Text oder als separates Popup-Fenster angezeigt.

Da es üblich und bequem ist, Hilfe zu einem Objekt zu finden, bietet Ipython Zugriff auf dieses Dokument und zugehörige Informationen mit einem kurzen "?".

In [2]: len?
Type:        builtin_function_or_method
String form: <built-in function len>
Namespace:   Python builtin
Docstring:
len(object) -> integer

Return the number of items of a sequence or mapping.

Diese Notation gilt für alles, einschließlich Methoden von Objekten.

In [3]: L = [1, 2, 3]
In [4]: L.insert?
Type:        builtin_function_or_method
String form: <built-in method insert of list object at 0x1024b8ea8>
Docstring:   L.insert(index, object) -- insert object before index

Oder sogar das Objekt selbst hat ein Dokument, das mit Typinformationen beginnt.

In [5]: L?
Type:        list
String form: [1, 2, 3]
Length:      3
Docstring:
list() -> new empty list
list(iterable) -> new list initialized from iterable's items

Wichtig ist, dass dies auch für Funktionen und eigene Objekte funktioniert! Angenommen, Sie definieren eine solche Dokumentzeichenfolge für eine kleine Funktion.

In [6]: def square(a):
  ....:     """Return the square of a."""
  ....:     return a ** 2
  ....:

Beachten Sie beim Erstellen einer Dokumentzeichenfolge für diese Funktion, dass wir diesmal nur ein einzelnes Zeichenfolgenliteral geschrieben haben. Dies liegt daran, dass Pythons "" "häufig über mehrere Zeilen hinweg verwendet wird und Docstrings normalerweise aus mehreren Zeilen bestehen.

Verwenden wir jetzt "?", Um diese Dokumentzeichenfolge zu finden.

In [7]: square?
Type:        function
String form: <function square at 0x103713cb0>
Definition:  square(a)
Docstring:   Return the square of a.

Recommended Posts

Versuchen Sie, das Python Data Science-Handbuch ins Japanische zu übersetzen
Versuchen Sie, mit Python zu übersetzen, während Sie das PDF-Layout beibehalten
Data Science Cheet Sheet (Python)
Versuchen Sie "100 Schläge auf Data Science" ①
Versuchen Sie, COVID-19 Tokyo-Daten mit Python zu kratzen
Starten Sie Data Science in der Cloud
Probieren Sie das Python LINE Pay SDK aus
Versuchen Sie es mit dem Python Cmd-Modul
Versuchen Sie, die Höhendaten des National Land Research Institute mit Python abzubilden
Versuchen Sie es mit der Wunderlist-API in Python
Generieren Sie japanische Testdaten mit Python faker
"Data Science 100 Knock (Strukturierte Datenverarbeitung)" Python-007 Erläuterung
"Data Science 100 Knock (Strukturierte Datenverarbeitung)" Python-001 Erläuterung
Laden Sie japanische Aktienkursdaten mit Python herunter
Ich habe Udemys "Practical Python Data Science" ausprobiert.
[Python] Probieren Sie pydash der Python-Version von lodash aus
"Data Science 100 Knock (Strukturierte Datenverarbeitung)" Python-002 Erläuterung
[Python] 100 Schläge auf Data Science (strukturierte Datenverarbeitung) 021 Erläuterung
"Data Science 100 Knock (Strukturierte Datenverarbeitung)" Python-005 Erläuterung
"Data Science 100 Knock (Strukturierte Datenverarbeitung)" Python-004 Erläuterung
[Python] 100 Schläge auf Data Science (strukturierte Datenverarbeitung) 020 Erläuterung
[Python] 100 Schläge auf Data Science (strukturierte Datenverarbeitung) 025 Erläuterung
"Data Science 100 Knock (Strukturierte Datenverarbeitung)" Python-003 Erläuterung
[Python] 100 Schläge auf Data Science (strukturierte Datenverarbeitung) 019 Erläuterung
Japanische Übersetzung: PEP 20 - Das Zen von Python
Versuchen Sie Python
Anzeige von Positionsinformationsdaten in Python - Versuchen Sie, mit der Kartenanzeigebibliothek (Folium) zu zeichnen -
Test von emacs-org parser orgparse für Python
[Python] 100 Schläge auf Data Science (strukturierte Datenverarbeitung) 018 Erläuterung
[Python] 100 Schläge auf Data Science (strukturierte Datenverarbeitung) 023 Erläuterung
Versuchen Sie, die Daimyo-Prozession in Tucker zu zerlegen
Probieren Sie es mit Word Cloud Japanese Python JupyterLab.
[Python] 100 Schläge auf Data Science (strukturierte Datenverarbeitung) 030 Erläuterung
[Python] 100 Schläge auf Data Science (strukturierte Datenverarbeitung) 022 Erläuterung
Versuchen Sie, das Mensch-Maschine-Diagramm mit Python zu lösen
Versuchen Sie es mit der BitFlyer Ligntning API in Python
Python: Versuchen Sie, die Benutzeroberfläche von Pythonista 3 auf dem iPad zu verwenden
Versuchen Sie es mit dem Python-Webframework Tornado Part 1
[Python] Memo zur Übersetzung von Matplotlib ins Japanische [Windows]
Probieren Sie Progate Free Edition [Python I]
[Python] 100 Schläge auf Data Science (strukturierte Datenverarbeitung) 017 Erläuterung
Probieren Sie CI den Push-Python-Code auf GitHub aus.
[Python] 100 Schläge auf Data Science (strukturierte Datenverarbeitung) 026 Erläuterung
[Python] 100 Schläge auf Data Science (strukturierte Datenverarbeitung) 016 Erläuterung
Versuchen Sie es mit dem Python-Webframework Tornado Part 2
Versuchen Sie, die Monte-Carlo-Methode in Python zu implementieren
[Python] 100 Schläge auf Data Science (strukturierte Datenverarbeitung) 027 Erläuterung
[Python] Holen Sie sich den Tag (Englisch & Japanisch)
Versuchen Sie, direkt von Python 3 aus auf die YQL-API zuzugreifen
Versuchen Sie, MLB-Daten auf Mac und Python zu importieren
[Python] 100 Schläge auf Data Science (strukturierte Datenverarbeitung) 029 Erläuterung
[Python] 100 Schläge auf Data Science (strukturierte Datenverarbeitung) 015 Erläuterung
Versuchen Sie, die DropBox Core-API mit Python zu verwenden
[Python] 100 Schläge auf Data Science (strukturierte Datenverarbeitung) 028 Erläuterung