[PYTHON] So extrahieren Sie mit Pandas Daten, denen der Wert nan nicht fehlt

--Umgebung --macOS Catalina Version 10.15.7 - Python 3.8.5 - pandas 1.1.3

Die Daten der Extraktionsquelle sehen so aus

df = pandas.read_csv('CSV.csv')
print(df)

Ausgabe


Name Anzahl Start Ende
0 Ponsuke 1 9:00  18:00
1 Ponsuke 2 18:00    NaN
2 Ponsuke 3 9:00  13:00
3 Ponsuke 4 NaN NaN
4 Ponsuke 5 9:00    NaN
5 Ponsuke 6 18:00    NaN
6 Ponsuke 7 12:00    NaN
7 Ponsuke 8 12:00    NaN
8 Ponsuke 9 NaN 18:00
9 Ponsuke 10 NaN NaN

Extrahieren Sie Daten, bei denen eine Spalte nicht NaN ist

Ich möchte extrahieren
Daten
Start Ende
x NaN NaN
o Nicht NaN NaN
x NaN Nicht NaN
o Nicht NaN Nicht NaN

Methode


# [Start]So löschen Sie Daten, deren Spalte NaN ist
print(df.dropna(subset=['Start']))
# [Start]So extrahieren Sie Daten, deren Spalte nicht NaN ist
print(df[df['Start'].notna()])
# [Start]So extrahieren Sie Daten, deren Spalte nicht NaN ist
print(df.query('Start.notna()', engine='python'))

Ausgabe


Name Anzahl Start Ende
0 Ponsuke 1 9:00  18:00
1 Ponsuke 2 18:00    NaN
2 Ponsuke 3 9:00  13:00
4 Ponsuke 5 9:00    NaN
5 Ponsuke 6 18:00    NaN
6 Ponsuke 7 12:00    NaN
7 Ponsuke 8 12:00    NaN

Extrahieren Sie in beiden Spalten Daten, die nicht NaN sind

Ich möchte extrahieren
Daten
Start Ende
x NaN NaN
x Nicht NaN NaN
x NaN Nicht NaN
o Nicht NaN Nicht NaN

Methode


# [Start]Oder[Ende]So löschen Sie Daten in einer der Spalten NaN
print(df.dropna(subset=['Start', 'Ende']))
# [Start][Ende]So extrahieren Sie Daten, bei denen beide Spalten nicht NaN sind
print(df.query('Start.notna() &Ende.notna()', engine='python'))

Ausgabe


Name Anzahl Start Ende
0 Ponsuke 1 9:00  18:00
2 Ponsuke 3 9:00  13:00

Extrahieren Sie Daten, wenn eine der beiden Spalten nicht NaN ist

Ich möchte extrahieren
Daten
Start Ende
x NaN NaN
o Nicht NaN NaN
o NaN Nicht NaN
o Nicht NaN Nicht NaN

Methode


#Machen Sie NaN zu einem leeren Zeichen[Start][Ende]So extrahieren Sie nicht leere Daten, indem Sie Spalten zusammenkleben
print(df[df['Start'].str.cat(df['Ende'], na_rep='') != ''])
# [Start][Ende]So extrahieren Sie Daten, bei denen eine der Spalten nicht NaN ist
print(df.query('Start.notna() |Ende.notna()', engine='python'))

Ausgabe


Name Anzahl Start Ende
0 Ponsuke 1 9:00  18:00
1 Ponsuke 2 18:00    NaN
2 Ponsuke 3 9:00  13:00
4 Ponsuke 5 9:00    NaN
5 Ponsuke 6 18:00    NaN
6 Ponsuke 7 12:00    NaN
7 Ponsuke 8 12:00    NaN
8 Ponsuke 9 NaN 18:00

Daten von "1 Spalte ist nicht NaN" und "1 Spalte ist NaN" extrahieren

Ich möchte extrahieren
Daten
Start Ende
x NaN NaN
x Nicht NaN NaN
o NaN Nicht NaN
x Nicht NaN Nicht NaN

Methode


# [Start]Nachdem die Säule NaN extrahiert hat[Ende]So löschen Sie Daten, deren Spalte NaN ist
print(df[df['Start'].isna()].dropna(subset=['Ende']))
# [Start]Die Säule ist nicht NaN und[Ende]So extrahieren Sie Daten, bei denen die Spalte NaN ist
print(df.query('Start.isna() &Ende.notna()', engine='python'))

Ausgabe


Name Anzahl Start Ende
8 Ponsuke 9 NaN 18:00

Recommended Posts

So extrahieren Sie mit Pandas Daten, denen der Wert nan nicht fehlt
So extrahieren Sie mit Pandas Daten, denen der Wert nan nicht fehlt
So konvertieren Sie horizontal gehaltene Daten mit Pandas in vertikal gehaltene Daten
So extrahieren Sie Nullwerte und Nicht-Nullwerte mit Pandas
Umgang mit unausgeglichenen Daten
Aufblasen von Daten (Datenerweiterung) mit PyTorch
So extrahieren Sie Funktionen von Zeitreihendaten mit PySpark Basics
Versuchen Sie, mit Pandas in ordentliche Daten umzuwandeln
Wie man Problemdaten mit Paiza liest
Erstellen von CSV-Beispieldaten mit Hypothese
Versuchen Sie, Doujin-Musikdaten mit Pandas zu aggregieren
So kratzen Sie Pferderenndaten mit Beautiful Soup
Konvertieren Sie 202003 bis 2020-03 mit Pandas
Datenvisualisierung mit Pandas
Datenmanipulation mit Pandas!
Daten mit Pandas mischen
Verwendung von xgboost: Mehrklassenklassifizierung mit Irisdaten
So kratzen Sie Bilddaten von Flickr mit Python
Wie man Pferderenndaten mit pandas read_html kratzt
Zugriff mit dem Cache beim Lesen von_json mit Pandas
So erhalten Sie mit SQLAlchemy + MySQLdb mehr als 1000 Daten
So geben Sie die CSV eines mehrzeiligen Headers mit Pandas aus
So konvertieren Sie eine JSON-Datei mit Python Pandas in eine CSV-Datei
[Python] Umgang mit Pandas read_html Lesefehler
Extrahieren Sie den Maximalwert mit Pandas und ändern Sie diesen Wert
Extrahieren Sie Twitter-Daten mit CSV
Wie aktualisiere ich mit SQLAlchemy?
Wie man Pandas Rolling benutzt
Wie man mit Theano besetzt
Wie mit SQLAlchemy ändern?
So trennen Sie Zeichenfolgen mit ','
Wie man RDP auf Fedora31 macht
Umgang mit Datenrahmen
Datenverarbeitungstipps mit Pandas
Wie lösche ich mit SQLAlchemy?
So extrahieren Sie einen Termin in Google Kalender mit Python
Einfallsreichtum beim speichersparenden Umgang mit Daten mit Pandas
Versuchen Sie, die Datentabelle von Azure SQL Server mit pyodbc zu extrahieren
So extrahieren Sie mit Numpy einen anderen als einen bestimmten Index
So erhalten Sie einen Überblick über Ihre Daten in Pandas
Lesen einer Excel-Datei (.xlsx) mit Pandas [Python]
So erstellen Sie einen Datenrahmen und spielen mit Elementen mit Pandas
Data Science-Begleiter in Python, wie man Elemente in Pandas spezifiziert
[Einführung in Python] So erhalten Sie Daten mit der Funktion listdir
Versuchen Sie, Merkmale von Sensordaten mit CNN zu extrahieren
So brechen Sie RT mit tweepy ab
Lesen von e-Stat-Subregionsdaten
Wie man nüchtern mit Pandas schreibt
[Python] Verwendung der Pandas-Serie
[Aktienkursanalyse] Lernen Sie Pandas mit Nikkei-Durchschnitt (004: Ändern Sie die gelesenen Daten in Nikkei-Durchschnitt)
So verwenden Sie virtualenv mit PowerShell
So installieren Sie Python-Pip mit Ubuntu20.04LTS
Vielseitige Datenerfassung mit Pandas + Matplotlib
So installieren Sie Pandas auf EC2 (Umgang mit MemoryError und PermissionError)
Wie fange ich mit Scrapy an?
Erste Schritte mit Python
[Pandas] Ich habe versucht, Verkaufsdaten mit Python zu analysieren. [Für Anfänger]
So ermitteln Sie die Speicheradresse des Pandas-Datenrahmenwerts
<Pandas> Umgang mit Zeitreihendaten in der Pivot-Tabelle
Umgang mit dem DistributionNotFound-Fehler