[FIXED] Ermitteln Sie den Prozentsatz fehlender Werte in jeder Spalte im angegebenen Datensatz

Ausgabe

import pandas as pd
df = pd.read_csv('https://query.data.world/s/Hfu_PsEuD1Z_yJHmGaxWTxvkz7W_b0')
percent= 100*(len(df.loc[:,df.isnull().sum(axis=0)>=1 ].index) / len(df.index))
print(round(percent,2))

Eingabe ist https://query.data.world/s/Hfu_PsEuD1Z_yJHmGaxWTxvkz7W_b0

und die Ausgabe sollte sein

Ord_id                 0.00
Prod_id                0.00
Ship_id                0.00
Cust_id                0.00
Sales                  0.24
Discount               0.65
Order_Quantity         0.65
Profit                 0.65
Shipping_Cost          0.65
Product_Base_Margin    1.30
dtype: float64

Lösung

Wie wäre es damit? Ich glaube, ich habe hier schon einmal etwas Ähnliches gefunden, aber ich sehe es jetzt nicht …

percent_missing = df.isnull().sum() * 100 / len(df)
missing_value_df = pd.DataFrame({'column_name': df.columns,
                                 'percent_missing': percent_missing})

Und wenn Sie möchten, dass die fehlenden Prozentsätze sortiert werden, folgen Sie dem oben Gesagten mit:

missing_value_df.sort_values('percent_missing', inplace=True)

Wie in den Kommentaren erwähnt, können Sie möglicherweise auch mit nur der ersten Zeile in meinem obigen Code auskommen, dh:

percent_missing = df.isnull().sum() * 100 / len(df)


Beantwortet von –
Engineero


Antwort geprüft von –
Katrina (FixError Volunteer)

0 Shares:
Leave a Reply

Your email address will not be published. Required fields are marked *

You May Also Like