Zu Python von R gehen, was ist das Python-Äquivalent eines Datenrahmens?
Ich bin vertraut mit der R-Daten-Träger wie Vektoren, dataframe, etc. aber tun müssen, um text-Analyse und wie es scheint, python hat einige gute setups zu tun. Meine Frage ist wo finde ich eine Erklärung, wie die python enthält Daten.
Speziell ich habe einen Datensatz in eine tab-getrennte Datei wo der text ist in der 3. Spalte und die Auswertung der Daten, die ich brauche, ist in der 4. Spalte.
id1 id2 text score
123 889 "This is the text I need to read..." 88
234 778 "This is the text I need to read..." 78
345 667 "This is the text I need to read..." 91
In R ich würde nur laden Sie es in ein data-frame mit dem Namen df1
und als ich anrufen wollte eine Spalte, die ich verwenden würde, df1$text oder df1[,3]
und wenn ich wollte, eine bestimmte Zelle, die ich verwenden könnte df1[1,3]
.
Bin ich immer ein Gefühl dafür, wie Lesen von Daten in python, aber nicht, wie Sie sich mit Tisch-Strukturen.
Wie würden Sie vorschlagen, die Arbeit mit diesem für ein python-newbie?
InformationsquelleAutor der Frage screechOwl | 2012-03-08
Du musst angemeldet sein, um einen Kommentar abzugeben.
Blick auf die DataFrame Objekt in der pandas Bibliothek.
InformationsquelleAutor der Antwort Joshua Ulrich
Herr Ullrich die Antwort mit der pandas Bibliothek ist die größte Annäherung an die R-Daten-frame. Jedoch, Sie können extrem ähnliche Funktionalität mit der numpy array, die mit dem Datentyp festgelegt
object
wenn nötig. Neuere Versionen von numpy haben Feldname Fähigkeiten ähnlich wie eindata.frame
, seine Indizierung ist tatsächlich etwas stärker als die R und seine Fähigkeit, die Objekte enthalten, geht weit über das hinaus, was R kann.Benutze ich R und numpy, abhängig von der Aufgabe zur hand. R ist die Weise, die besser mit Formeln und integrierten Statistiken. Der Python-code ist wartbarer und leichter zu Haken bis zu anderen Systemen.
Bearbeitet werden: Hinweis Hinzugefügt, dass numpy jetzt hat Feldname Fähigkeiten
InformationsquelleAutor der Antwort Brian B
Ich bin mir nicht sicher, wie gut das übersetzt zu 'R', welche ich nie benutzt, aber in Python ist dies, wie würde ich Vorgehen:
Wird alles gelesen, was in einer python-Liste. Listen sind nullbasiert. Um den text der Spalte aus der zweiten Reihe:
Den score line:
InformationsquelleAutor der Antwort Burhan Khalid
Zusätzlich zu Panda DataFrame, können Sie die rpy2 Bibliothek (von http://thread.gmane.org/gmane.comp.python.rpy/1344):
InformationsquelleAutor der Antwort Jonathan
Eine option, die ich in der Vergangenheit verwendet habe ist
csv.DictReader
können Sie auf Daten in einer Reihe von Namen (jede Zeile wird einedict
):Ausgabe:
InformationsquelleAutor der Antwort bigjim
Den Gegenwert von R in python mit Pandas
Initialisieren Sie einen DataFrame, wie unten
InformationsquelleAutor der Antwort Steve