當前位置:首頁 » 編程語言 » python清洗數據

python清洗數據

發布時間: 2023-01-08 05:03:30

A. python數據清洗和可視化的文獻有哪些

《Python 3 爬蟲、數據清洗與可視化實戰(第2版)》、《python數據可視化:基於bokeh的可視化繪圖》和《Python數據科學手冊》等。
python數據清洗和可視化的文獻有這些,可以幫助學習數據抽取、數據清洗、數據轉換、數據探索等。

B. Python第19課:數據清洗之去錯、去空、去重

Python 第19課:數據清洗之去錯、去空、去重

時間 2019-02-01 下午3:30

主講 劉培富

地點 四樓電教室

數據清洗是數據治理的關鍵環節,是指對獲取的原始數據(也稱「臟數據」)進行審查、校驗、加工的過程,目的在於刪除重復信息、糾正錯誤信息,保持數據一致性。

一般來說,數據清洗,主要是對數據進行去錯、去空、去重處理。

針對一張包含姓名、身份證號碼、車牌號碼的數據表,建立糾錯規則如下:

1.車牌號既不包含漢字贛,且不包含漢字饒。

2.身份證號碼的年份既不等於19也不等於20,身份證號碼的月份大於12,身份證號碼的日期大於31。

3.身份證號碼位數不等於18。

4.姓名的長度小於等於1。

二、去空

對於關鍵性數據,不允許為空,對於這類數據,要查詢是否存在空值。

三、去重

在一張表中,有的數據列允許重復,有的數據列則不允許重復。例如,對於一張車主信息表來說,姓名、身份證號可以重復,因為存在一人登記多輛車的情形,這種重復,不能認為是錯誤。但是,車牌號則不允許重復,否則就存在業務邏輯的錯誤。所以,針對車牌號數據列,要進行去重。

通過以下SQL語句,可以列出重復的數據:

綜上,數據清洗,既要懂技術,更要懂業務,否則無法正確制定清洗規則,導致數據清洗流於形式,達不到清洗的效果。

C. pythonq清洗數據集經典案例

####################讀取數據======================================================
import pandas as pd
import numpy as np
d1 = pd.read_excel('C:\Users\xn084037\Desktop\清洗數據集.xlsx',sheetname='一級流量')
d1.head(2)

d2 = pd.read_excel('C:\Users\xn084037\Desktop\清洗數據集.xlsx',sheetname='二級流量')
d2.head(2)

d3 = pd.read_excel('C:\Users\xn084037\Desktop\清洗數據集.xlsx',sheetname='三級流量')
d3.head(2)
##########################清洗------01增——拓展數據維度

df_concat = pd.concat([d1,d2,d3])
df_concat

h1 = pd.DataFrame({'語文':[93,80,85,76,58],'數學':[87,99,95,85,70],'英語':[80,85,97,65,88]},
index =['韓梅梅','李雪','李華','王明','鐵蛋'])
h1

h2 = pd.DataFrame({'籃球':[93,80,85,76],'舞蹈':[87,99,95,85]},
index= ['李華','王明','鐵蛋','劉強'])
h2

pd.merge(left=h1,right=h2,left_index=True,right_index=True,how='inner')

df_concat.dropna()

df_concat.dropna(subset = ['客單價'])

repeat = pd.concat([df_concat,df_concat])
print('重復的數據集一共多少行:',len(repeat))

unique = repeat.drop_plicates()
print('去重後的數據集一共多少行:',len(unique))
unique

df_concat.drop_plicates(subset='流量級別')

df_concat.drop_plicates(subset='流量級別',keep='last')

******************03 查——基於條件查詢*********************************

df_concat.loc[(df_concat['訪客數']>10000)&(df_concat['流量級別']=='一級'),:]

sort_df= df_concat.sort_values('支付金額',ascending=False)
sort_df

*********************04 分——分組和切分************************************

df_concat.groupby('流量級別')

df_concat.groupby('流量級別').sum()
df_concat.groupby('流量級別').sum()

df_concat.groupby('流量級別')['訪客數','支付金額'].sum()

df_concat.groupby('流量級別',as_index=False)['訪客數','支付金額'].sum()

pd.cut(x,bins,right,labels)

pd.cut(x=df_concat['訪客數'],bins=[0,100,1000,10000,100000])

df_concat['分類打標']= pd.cut(x=df_concat['訪客數'],bins=[0,100,1000,10000,100000],
right=False,labels=['辣雞','百級','千級','萬級'])
df_concat

###################Pandas將多個Sheet寫入到本地同一Excel文件中
import pandas as pd #讀取兩個表格data1=pd.read_excel('文件路徑')
data2=pd.read_excel('C:\Users\xn084037\Desktop\副本三代核心系統入賬金額異常結果數據.xlsx')#將兩個表格輸出到一個excel文件裡面
data1=pd.read_excel('C:\Users\xn084037\Desktop\副本三代核心系統入賬金額.xlsx')#將兩個表格輸出到一個excel文件裡面
writer=pd.ExcelWriter('D:新表.xlsx')
data1.to_excel(writer,sheet_name='sheet1')
data2.to_excel(writer,sheet_name='sheet2') #必須運行
writer.save()#不然不能輸出到本地writer.save()

D. 怎麼用python做excel里的數據清洗

解答如下:
首先打開txt文件,使用open(txtname),進行一行一行的讀;
如果需要的話,對每行的數據進行解析;
導入xlrd,xlwt進行excel讀寫;
大致代碼如下:
import
xlrd,xlwttxtname=r"c:\value.txt"workbook
=
xlwt.workbook(encoding
=
'ascii')worksheet
=
workbook.add_sheet('sheet1')fp=open(txtname)for
linea
in
fp.readlines():
worksheet.write(0,
0,
label
=
linea)workbook.save('excel_workbook.xls')fp.close()

E. Excel用Python讀取清洗後怎麼寫入數據

導入xlrd庫。
要導入xlrd庫,它是讀取excel中數據的庫,解壓所下載的壓縮包,用cmd命令行CD到解壓目錄,執行pythonsetup.pyinstall命令,要導入xlwt庫,它是開發人員用於生成與MicrosoftExcel版本95到2003兼容的電子表格文件的庫。接著用cmd命令行切換到下載文件所解壓的目錄,輸入pythonsetup.pyinstall命令,如無意外則安裝成功。
openpyxl是用於讀取和寫入Excel2010xlsx/xlsm/xltx/xltm文件的Python庫。

F. python數據分析需要數據清理嗎

1、對數據進行排序df.sort_values()
#讀取數據
titanic_survival=pd.read_csv(r"C:Userspythonwandata_minepython_pandas itanic_train.csv")
#用sort_values()函數對指定列排序,默認升序排序,inplace=True表示在原來的df上排序titanic_survival.sort_values(("Age"),inplace=Tru
2、缺失值判斷及統計pandas.isnull()、pandas.isnull
空值統計方法一:df.isnull().sum():
#當不指定具體列時,統計整個df的缺失值個數
titanic_survival['Age'].isnull().sum()
通過len()函數統計缺失值
3、缺失值處理
處理缺失值可以分為兩類:刪除缺失值和缺失值插補。而缺失值插補又分為以下幾種:
均值/中位數/眾數插補
使用固定值(將缺失值的屬性用一個常量代替)
最近鄰插補(在記錄中找到與缺失值樣本最接近的樣本的該屬性插補)
回歸方法(對帶有缺失值的變數,根據已有數據和與其有關的其他變數建立擬合模型來預測缺失值)
插值法(利用已知點建立合適的插值函數f(x),未知值由對應點xi求出來近似代替)
下面,我們主要討論刪除缺失值,學習一些pandas缺失值刪除的操作。
1)df.dropna(),舍棄含有任意缺失值的行
#等價於titanic_survival.dropna(axis=0) axis=0表示刪除行,axis=1表示刪除列
dropall=titanic_survival.dropna()
刪除含任意空值的行
2)df.dropna()函數刪除某個列中含有空值的行
現在這個數據中age、cabin、embarked都有缺失值,如果我們直接使用df.dropna()會刪除掉這三列中都有空值的所有行,但是我們希望只刪除age列中有空值的數據,那該如何處理呢?
直接使用df.dropna(subset=['column_list'])
drop_age_null=titanic_survival.dropna(subset=["Age"])
刪除指定列中含有缺失值的行
pandas自定義函數

G. python數據清洗excel

python清洗excel的數據還是很簡單的
這里就列舉例子說一下
這是原始數據,這里要處理的是地區和薪水兩個欄位。

主要把薪資處理成以千/月為單位。保留城市。
處理後的數據:

H. python數據清洗的優點

優點: 靈活性高,可以隨意定製分析需求 脈絡清晰抑鬱理解數據 操作性強。

I. python數據分析干什麼

第一、檢查數據表
Python中使用shape函數來查看數據表的維度,也就是行數以及列數。你可以使用info函數來查看數據表的整體信息,使用dtype函數來返回數據格式;lsnull是Python中檢驗空值的函數,可以對整個數據表進行檢查,也可以單獨對某一行進行空值檢查,返回的結構是邏輯值,包含空值返回true,不包含則返回false。
第二、數據清洗
Python可以進行數據清洗,Python中處理空值的方法比較靈活,可以使用Dropna函數用來刪除數據表中包含空值的數據,也可以使用fillna函數對空值進行填充;Python中dtype是查看數據格式的函數,與之對應的是astype函數,用來更改數據格式,Rename是更改列名稱的函數,drop_plicates函數刪除重復值,replace函數實現數據替換。
第三、數據提取
進行數據提取時,主要使用三個函數:loc、iloc以及ix。Loc函數按標簽進行提取,iloc按位置進行提取,ix可以同時按照標簽和位置進行提取。除了按標簽和位置提取數據之外,還可以按照具體的條件進行提取,比如使用loc和isin兩個函數配合使用。
第四、數據篩選
Python數據分析還可以進行數據篩選,Python中使用loc函數配合篩選條件來完成篩選功能,配合sum和count函數還能實現Excel中sumif和countif函數的功能。使用的主要函數是groupby和pivot_table;groupby是進行分類匯總的函數,使用方法比較簡單,groupby按列名稱出現的順序進行分組。

J. Python數據分析師主要做什麼Python基礎

伴隨著大數據時代的到來,Python的熱度居高不下,已成為職場人士必備的技能,它不僅可以從事網路爬蟲、人工智慧、Web開發、游戲開發等工作,還是數據分析的首選語言。那麼問題來了,利用Python數據分析可以做什麼呢?簡單來講,可以做的事情有很多,具體如下。

第一、檢查數據表

Python中使用shape函數來查看數據表的維度,也就是行數和列數。你可以使用info函數查看數據表的整體信息,使用dtypes函數來返回數據格式。Lsnull是Python中檢查空置的函數,你可以對整個數據進行檢查,也可以單獨對某一列進行空置檢查,返回的結果是邏輯值,包括空置返回True,不包含則返回False。使用unique函數查看唯一值,使用Values函數用來查看數據表中的數值。

第二,數據表清洗

Python中處理空值的方法比較靈活,可以使用Dropna函數用來刪除數據表中包括空值的數據,也可以使用fillna函數對空值進行填充。Python中dtype是查看數據格式的函數,與之對應的是asstype函數,用來更改數據格式,Rename是更改名稱的函數,drop_plicate函數函數重復值,replace函數實現數據轉換。

第三,數據預處理

數據預處理是對清洗完的數據進行整理以便後期統計和分析工作,主要包括數據表的合並、排序、數值分列、數據分組以及標記等工作。在Python中可以使用merge函數對兩個數據表進行合並,合並的方式為inner,此外還有left、right和outer方式。使用ort_values函數和sort_index函數完成排序,使用where函數完成數據分組,使用split函數實現分列。

第四,數據提取

主要是使用三個函數:loc、iloc和ix,其中loc函數按標准值進行提取,iloc按位置進行提取,ix可以同時按標簽和位置進行提取。除了按標簽和位置提取數據意外,還可以按照具體的條件進行提取。

第五,數據篩選匯總

Python中使用loc函數配合篩選條件來完成篩選功能,配合sum和count函數還能實現Excel中sumif和countif函數的功能。Python中使用的主要函數是groupby和pivot_table。

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:585
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:881
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:574
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:761
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:677
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1005
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:250
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:108
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:799
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:705