Heim  >  Artikel  >  Backend-Entwicklung  >  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
Linda HamiltonOriginal
2024-11-04 12:17:29496Durchsuche

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>

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>

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>

Dies wird Folgendes ausgeben:

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

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>

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!

Stellungnahme:
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