Heim > Backend-Entwicklung > Python-Tutorial > Wie konvertiere ich einen Pandas-DataFrame mit fehlenden Werten in ein NumPy-Array?

Wie konvertiere ich einen Pandas-DataFrame mit fehlenden Werten in ein NumPy-Array?

Linda Hamilton
Freigeben: 2024-11-04 12:17:29
Original
589 Leute haben es durchsucht

How to Convert a Pandas DataFrame with Missing Values to a NumPy Array?

Pandas DataFrame mit fehlenden Werten in NumPy-Array konvertieren

Das Konvertieren eines Pandas DataFrame mit fehlenden Werten in ein NumPy-Array ist eine häufige Aufgabe bei der Datenanalyse. Die gewünschte Ausgabe besteht darin, dass np.nan fehlende Werte darstellt.

Verwendung von df.to_numpy()

Die empfohlene Methode für diese Konvertierung ist die Verwendung der Methode df.to_numpy():

<code class="python">import numpy as np
import pandas as pd

# Create a DataFrame with missing values
index = [1, 2, 3, 4, 5, 6, 7]
a = [np.nan, np.nan, np.nan, 0.1, 0.1, 0.1, 0.1]
b = [0.2, np.nan, 0.2, 0.2, 0.2, np.nan, np.nan]
c = [np.nan, 0.5, 0.5, np.nan, 0.5, 0.5, np.nan]
df = pd.DataFrame({'A': a, 'B': b, 'C': c}, index=index)

# Convert to NumPy array
np_array = df.to_numpy()
print(np_array)</code>
Nach dem Login kopieren

Dies wird Folgendes ausgeben:

<code class="python">array([[ nan,  0.2,  nan],
       [ nan,  nan,  0.5],
       [ nan,  0.2,  0.5],
       [ 0.1,  0.2,  nan],
       [ 0.1,  0.2,  0.5],
       [ 0.1,  nan,  0.5],
       [ 0.1,  nan,  nan]])</code>
Nach dem Login kopieren

Datentypen beibehalten

Um die Datentypen im Ausgabe-NumPy-Array beizubehalten, können Sie die Methode df.to_records() verwenden :

<code class="python">records = df.to_records()
print(records.dtype)</code>
Nach dem Login kopieren

Dies wird Folgendes ausgeben:

<code class="python">[('index', 'O'), ('A', '<f8'), ('B', '<f8'), ('C', '<f8')]</code>
Nach dem Login kopieren

wobei O den Objekttyp (Index) und f8 den Float64-Typ (die Werte) darstellt.

Mit np .rec.fromrecords können Sie die Datensätze in ein strukturiertes NumPy-Array konvertieren:

<code class="python">import numpy as np

np_array = np.rec.fromrecords(records, names=df.columns)
print(np_array.dtype)</code>
Nach dem Login kopieren

Dadurch werden die gleichen Datentypen wie die Datensätze ausgegeben.

Das obige ist der detaillierte Inhalt vonWie konvertiere ich einen Pandas-DataFrame mit fehlenden Werten in ein NumPy-Array?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage