Hinzufügen von Serien zur Spalte in Python-Pandas

Fallen gelassen, weil ich dämonensüchtig war.

Wenn der Index der hinzuzufügenden Serie von 0 ist

>>> s1 = pd.Series(data=[10,20,30])
>>> s1
0    10
1    20
2    30
dtype: int64

>>> s2 = pd.Series(data=[100,200,300])
>>> s2
0    100
1    200
2    300
dtype: int64

Zwei Serien werden als Spalte von DataFrame hinzugefügt.

>>> df = pd.DataFrame()
>>> df[1]=s1
>>> df[2]=s2
>>> df
    1    2
0  10  100
1  20  200
2  30  300

Das ist einfach.

Wenn der Index der hinzuzufügenden Serie unterschiedlich ist

>>> s1 = pd.Series(data=[10,20,30], index=[1,2,3])
>>> s1
1    10
2    20
3    30
dtype: int64
>>> s2 = pd.Series(data=[100,200,300], index=[2,3,4])
>>> s2
2    100
3    200
4    300
dtype: int64

Die Indizes von s1 und s2 sind nicht von 0, und es gibt einige, die nicht gemeinsam sind.

Zu diesem Zeitpunkt, wenn Sie es wie zuvor zum DataFrame hinzufügen

>>> df[1]=s1
>>> df[2]=s2
>>> df
      1      2
0   NaN    NaN
1  10.0    NaN
2  20.0  100.0

Mit einer festen Nummer wird es ohne Erlaubnis von 0 eingegeben.

Wenn Sie das Original s1 [3] sehen und versuchen möchten, den Inhalt von df gewaltsam zu sehen, tritt ein Fehler auf.

>>> s1[3]
30
>>> df[1][3]
Traceback (most recent call last):
  File "<input>", line 1, in <module>
  File "/usr/local/lib/python2.7/dist-packages/pandas/core/series.py", line 603, in __getitem__
    result = self.index.get_value(self, key)
  File "/usr/local/lib/python2.7/dist-packages/pandas/indexes/base.py", line 2169, in get_value
    tz=getattr(series.dtype, 'tz', None))
  File "pandas/index.pyx", line 98, in pandas.index.IndexEngine.get_value (pandas/index.c:3557)
  File "pandas/index.pyx", line 106, in pandas.index.IndexEngine.get_value (pandas/index.c:3240)
  File "pandas/index.pyx", line 154, in pandas.index.IndexEngine.get_loc (pandas/index.c:4279)
  File "pandas/src/hashtable_class_helper.pxi", line 404, in pandas.hashtable.Int64HashTable.get_item (pandas/hashtable.c:8564)
  File "pandas/src/hashtable_class_helper.pxi", line 410, in pandas.hashtable.Int64HashTable.get_item (pandas/hashtable.c:8508)
KeyError: 3

Verwenden Sie in diesem Fall `` `pandas.concat```.

>>> df = pd.DataFrame()
>>> df = pd.concat([df, s1], axis=1)
>>> df
    0
1  10
2  20
3  30
>>> df = pd.concat([df, s2], axis=1)
>>> df
      0      0
1  10.0    NaN
2  20.0  100.0
3  30.0  200.0
4   NaN  300.0

Wenn Sie `axis = 1``` in das Argument einfügen, wird es in Spaltenrichtung hinzugefügt. Außerdem wird `numpy.nan``` eingegeben, wo es keine gibt.

** Die Spalte wird jedoch zu 0. ** ** ** Es scheint, dass es nicht durch ein Argument angegeben werden kann, also setzen Sie Series zuerst auf einen eindimensionalen DataFrame und dann auf concat.

>>> df = pd.DataFrame()
>>> df = pd.concat([df, pd.DataFrame(s1, columns=[1])], axis=1)
>>> df = pd.concat([df, pd.DataFrame(s2, columns=[2])], axis=1)
>>> df
      1      2
1  10.0    NaN
2  20.0  100.0
3  30.0  200.0
4   NaN  300

Recommended Posts

Hinzufügen von Serien zur Spalte in Python-Pandas
[Python] Verwendung der Pandas-Serie
Fügen Sie mit Pandas Summen zu Zeilen und Spalten hinzu
Python-Anwendung: Pandas Teil 2: Serie
So löschen Sie stdout in Python
Melden Sie sich auf der Website in Python an
Ich habe versucht zusammenzufassen, wie man Pandas von Python benutzt
Wie man in Python entwickelt
Tauschen Sie Spalten in Pandas-Datenrahmen aus
Post an Slack in Python
Zeichnen Sie Zeitreihendaten in Python mit Pandas und Matplotlib
Data Science-Begleiter in Python, wie man Elemente in Pandas spezifiziert
[Python] Wie man PCA mit Python macht
Konvertieren Sie Markdown in Python in PDF
So sammeln Sie Bilder in Python
Verwendung von SQLite in Python
Im Python-Befehl zeigt Python auf Python3.8
Versuchen Sie, Trace in Python zu berechnen
[Einführung in Python] Verwenden wir Pandas
Wie man MySQL mit Python benutzt
So verpacken Sie C in Python
6 Möglichkeiten zum Stringen von Objekten in Python
Verwendung von PubChem mit Python
[Einführung in Python] Verwenden wir Pandas
[Einführung in Python] Verwenden wir Pandas
Umgang mit Japanisch mit Python
Eine Alternative zu "Pause" in Python
[Python] So fügen Sie einer Tabelle Zeilen und Spalten hinzu (pandas DataFrame)
<Pandas> Umgang mit Zeitreihendaten in der Pivot-Tabelle
Verwendung berechneter Spalten in CASTable
Ich habe versucht, PLSA in Python zu implementieren
In Python geschriebener Fourier-Serien-Verifizierungscode
[Python] Was ist Pandas Series und DataFrame?
[Python] Zusammenfassung der Verwendung von Pandas
[Einführung in Python] Wie verwende ich eine Klasse in Python?
Versuchen Sie, sich mit Python bei qiita anzumelden
[Python] Extrahiere △△ mit maximalem ○○ mit Pandas
Installieren Sie Pyaudio, um Wellen in Python zu spielen
Laden Sie csv mit doppelten Spalten in Pandas
Ich habe versucht, Permutation in Python zu implementieren
Methode zum Erstellen einer Python-Umgebung in Xcode 6
Dynamisches Definieren von Variablen in Python
So machen Sie R chartr () in Python
Pin aktuelles Verzeichnis an Skriptverzeichnis in Python
[Itertools.permutations] So löschen Sie eine Sequenz in Python
PUT gzip direkt in S3 in Python
Senden Sie mit Python (Python3) E-Mails an mehrere Empfänger.
Konvertieren Sie die psd-Datei in Python in png
Beispielskript zum Überfüllen von Signalen in Python
Dekorateur zur Vermeidung von UnicodeEncodeError in Python 3 print ()
So arbeiten Sie mit BigQuery in Python
Melden Sie sich mit Anforderungen in Python bei Slack an
Wie bekomme ich Stacktrace in Python?
So zeigen Sie die neunundneunzig Tabelle in Python an
Einfache Möglichkeit, Wikipedia mit Python zu verwenden
So extrahieren Sie einen Polygonbereich in Python
So überprüfen Sie die Version von opencv mit Python
Ich habe versucht, ADALINE in Python zu implementieren
Werfen Sie Incoming Webhook in Python auf Mattermost