溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

pandas數(shù)據(jù)清洗如何實現(xiàn)刪除

發(fā)布時間:2022-06-17 14:12:50 來源:億速云 閱讀:143 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹“pandas數(shù)據(jù)清洗如何實現(xiàn)刪除”的相關(guān)知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“pandas數(shù)據(jù)清洗如何實現(xiàn)刪除”文章能幫助大家解決問題。

準備工作(導(dǎo)入庫、導(dǎo)入數(shù)據(jù))

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
import seaborn as  sns
sns.set_style("darkgrid")
list_csv = ['Amazon_top_selling_book.csv','breast_cancer_wisconsin.csv','diamonds.csv','insurance.csv','netflix_titles.csv','penguins.csv',
           'titanic.csv','winequality-red.csv']
dic_path = r'C:\Users\pandas\Desktop\task\228datasets\datasets'
part_data = pd.read_csv(dic_path+'\\'+list_csv[4])
part_data
 show_idtypetitledirectorcastcountrydate_addedrelease_yearratingdurationlisted_indescription
0s1MovieDick Johnson Is DeadKirsten JohnsonNaNUnited StatesSeptember 25, 20212020PG-1390 minDocumentariesAs her father nears the end of his life, filmm...
1s2TV ShowBlood & WaterNaNAma Qamata,
Khosi Ngema,
Gail Mabalane,
Thaban...
South AfricaSeptember 24, 20212021TV-MA2 SeasonsInternational TV Shows,
TV Dramas,
TV Mysteries
After crossing paths at a party, a Cape Town t...
2s3TV ShowGanglandsJulien LeclercqSami Bouajila,
Tracy Gotoas,
Samuel Jouy,
Nabi...
NaNSeptember 24, 20212021TV-MA1 SeasonCrime TV Shows,
International TV Shows,
TV Act...
To protect his family from a powerful drug lor...
3s4TV ShowJailbirds New OrleansNaNNaNNaNSeptember 24, 20212021TV-MA1 SeasonDocuseries, Reality TVFeuds, flirtations and toilet talk go down amo...
4s5TV ShowKota FactoryNaNMayur More,
Jitendra Kumar,
Ranjan Raj,
Alam K...
IndiaSeptember 24, 20212021TV-MA2 SeasonsInternational TV Shows,
Romantic TV Shows,
TV ...
In a city of coaching centers known to train I...
.......................................

8807 rows × 12 columns

檢測數(shù)據(jù)情況

Hint:該函數(shù)用于檢測任意DataFrame中缺失值情況

def missing_values_table(df):
        mis_val = df.isnull().sum()
        mis_val_percent = 100 * df.isnull().sum() / len(df)
        mis_val_table = pd.concat([mis_val, mis_val_percent], axis=1)
        mis_val_table_ren_columns = mis_val_table.rename(
        columns = {0 : 'Missing Values', 1 : '% of Total Values'})
        mis_val_table_ren_columns = mis_val_table_ren_columns[
            mis_val_table_ren_columns.iloc[:,1] != 0].sort_values(
        '% of Total Values', ascending=False).round(1)
        print ("Your selected dataframe has " + str(df.shape[1]) + " columns.\n"      
            "There are " + str(mis_val_table_ren_columns.shape[0]) +
              " columns that have missing values.")
        return mis_val_table_ren_columns
missing_values_table(part_data)

Your selected dataframe has 12 columns.
There are 6 columns that have missing values.

 Missing Values% of Total Values
director263429.9
country8319.4
cast8259.4
date_added100.1
rating40.0
duration30.0

DataFrame.drop(labels=None,axis=0, index=None, columns=None, inplace=False)

參數(shù)說明:

  • labels 就是要刪除的行列的名字,用列表給定

  • axis 默認為0,指刪除行,因此刪除columns時要指定axis=1;

  • index 直接指定要刪除的行

  • columns 直接指定要刪除的列

  • inplace=False,默認該刪除操作不改變原數(shù)據(jù),而是返回一個執(zhí)行刪除操作后的新dataframe;

  • inplace=True,則會直接在原數(shù)據(jù)上進行刪除操作,刪除后無法返回。

方式一:刪除指定行或列

labels+axis

demo = part_data.drop(['director'], axis=1)
missing_values_table(demo)

Your selected dataframe has 11 columns.
There are 5 columns that have missing values.

 Missing Values% of Total Values
country8319.4
cast8259.4
date_added100.1
rating40.0
duration30.0
方式二:利用boolean刪除滿足條件元素所在的行

df = df.drop(df[].index)

# 刪除release_year年份在2009年之前的行
demo = part_data.drop(part_data[part_data["release_year"]<2009].index)
demo.shape

(7624, 12)

關(guān)于“pandas數(shù)據(jù)清洗如何實現(xiàn)刪除”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識,可以關(guān)注億速云行業(yè)資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI