pandas數(shù)據(jù)清洗實(shí)現(xiàn)刪除的項(xiàng)目實(shí)踐
準(zhǔ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_id | type | title | director | cast | country | date_added | release_year | rating | duration | listed_in | description | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | s1 | Movie | Dick Johnson Is Dead | Kirsten Johnson | NaN | United States | September 25, 2021 | 2020 | PG-13 | 90 min | Documentaries | As her father nears the end of his life, filmm... |
| 1 | s2 | TV Show | Blood & Water | NaN | Ama Qamata, Khosi Ngema, Gail Mabalane, Thaban... | South Africa | September 24, 2021 | 2021 | TV-MA | 2 Seasons | International TV Shows, TV Dramas, TV Mysteries | After crossing paths at a party, a Cape Town t... |
| 2 | s3 | TV Show | Ganglands | Julien Leclercq | Sami Bouajila, Tracy Gotoas, Samuel Jouy, Nabi... | NaN | September 24, 2021 | 2021 | TV-MA | 1 Season | Crime TV Shows, International TV Shows, TV Act... | To protect his family from a powerful drug lor... |
| 3 | s4 | TV Show | Jailbirds New Orleans | NaN | NaN | NaN | September 24, 2021 | 2021 | TV-MA | 1 Season | Docuseries, Reality TV | Feuds, flirtations and toilet talk go down amo... |
| 4 | s5 | TV Show | Kota Factory | NaN | Mayur More, Jitendra Kumar, Ranjan Raj, Alam K... | India | September 24, 2021 | 2021 | TV-MA | 2 Seasons | International TV Shows, Romantic TV Shows, TV ... | In a city of coaching centers known to train I... |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
8807 rows × 12 columns
檢測(cè)數(shù)據(jù)情況
Hint:該函數(shù)用于檢測(cè)任意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 | |
|---|---|---|
| director | 2634 | 29.9 |
| country | 831 | 9.4 |
| cast | 825 | 9.4 |
| date_added | 10 | 0.1 |
| rating | 4 | 0.0 |
| duration | 3 | 0.0 |
DataFrame.drop(labels=None,axis=0, index=None, columns=None, inplace=False)
參數(shù)說明:
- labels 就是要?jiǎng)h除的行列的名字,用列表給定
- axis 默認(rèn)為0,指刪除行,因此刪除columns時(shí)要指定axis=1;
- index 直接指定要?jiǎng)h除的行
- columns 直接指定要?jiǎng)h除的列
- inplace=False,默認(rèn)該刪除操作不改變?cè)瓟?shù)據(jù),而是返回一個(gè)執(zhí)行刪除操作后的新dataframe;
- inplace=True,則會(huì)直接在原數(shù)據(jù)上進(jìn)行刪除操作,刪除后無法返回。
方式一:刪除指定行或列
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 | |
|---|---|---|
| country | 831 | 9.4 |
| cast | 825 | 9.4 |
| date_added | 10 | 0.1 |
| rating | 4 | 0.0 |
| duration | 3 | 0.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ù)清洗實(shí)現(xiàn)刪除的項(xiàng)目實(shí)踐的文章就介紹到這了,更多相關(guān)pandas數(shù)據(jù)清洗刪除內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Pandas 數(shù)據(jù)處理,數(shù)據(jù)清洗詳解
- 利用pandas進(jìn)行數(shù)據(jù)清洗的方法
- Pandas數(shù)據(jù)清洗函數(shù)總結(jié)
- Python數(shù)據(jù)清洗之利用pandas篩選數(shù)據(jù)詳解
- Pandas數(shù)據(jù)清洗的實(shí)現(xiàn)
- 利用pandas進(jìn)行數(shù)據(jù)清洗的7種方式
- 基于pandas數(shù)據(jù)清洗的實(shí)現(xiàn)示例
- Pandas數(shù)據(jù)清洗與過濾空值技巧
- Pandas數(shù)據(jù)清洗的維度詳解
- Pandas 數(shù)據(jù)清洗的具體使用
相關(guān)文章
關(guān)于Pytorch MaxUnpool2d中size操作方式
今天小編就為大家分享一篇關(guān)于Pytorch MaxUnpool2d中size操作方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-01-01
python-opencv中的cv2.inRange函數(shù)用法說明
這篇文章主要介紹了python-opencv中的cv2.inRange函數(shù)用法說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-04-04
numpy.ndarray 交換多維數(shù)組(矩陣)的行/列方法
今天小編就為大家分享一篇numpy.ndarray 交換多維數(shù)組(矩陣)的行/列方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-08-08
python 畫二維、三維點(diǎn)之間的線段實(shí)現(xiàn)方法
今天小編就為大家分享一篇python 畫二維、三維點(diǎn)之間的線段實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-07-07
Python實(shí)現(xiàn)多元線性回歸的梯度下降法
梯度下降法的機(jī)器學(xué)習(xí)的重要思想之一,梯度下降法的目標(biāo),是使得代價(jià)函數(shù)最小。本文主要和大家分享的是python實(shí)現(xiàn)多元線性回歸的梯度下降法,感興趣的可以了解一下2022-08-08

