網站首頁 編程語言 正文
數據清洗的任務是過濾那些不符合要求的數據,將過濾的結果交給業務主管部門,確認是否過濾掉還是由業務單位修正之后再進行抽取。不符合要求的數據主要是有不完整的數據、錯誤的數據、重復的數據三大類。數據清洗是與問卷審核不同,錄入后的數據清理一般是由計算機而不是人工完成。
數據清洗主要是處理缺失數據、重復數據、錯誤數據等。
處理缺失值常用方法:
- 刪除數據:根據缺失情況,按行刪除或者按列刪除
- 度量填補缺失值:可以根據數據屬性,采用均值、中位數、眾數等中心度量值來填補缺失數據
- 預測填補缺失值:可以將缺失屬性作為因變量,建立分類或回歸模型,對缺失值進行建模填補
案例一:預處理部分地區數據
- 讀取北京地區的數據
- 讀取天津地區的數據
- 檢測file_data_bjinfo中的數據,返回True的表示是重復數據
- 檢測file_data_tjinfo中的數據,返回True的表示是重復數據
- 對北京地區的數據,刪除重復值
- 檢測天津地區的數據是否存在缺失值
- 計算天津地區常住人口的平均數,設置float類型,并保留兩位小數,并且以字典映射的方式進行填充
- 對北京地區信息進行異常值檢測。并且用箱型圖進行表示
- 對天津地區信息進行異常值檢測。并且用箱型圖進行表示
- 對兩地數據進行合并
# 讀取北京地區的數據
import pandas as pd
with open("北京地區信息.csv") as f:
file_data_bjinfo = pd.read_csv(f)
# 讀取天津地區的數據
with open("天津地區信息.csv") as f:
file_data_tjinfo = pd.read_csv(f)
# 檢測file_data_bjinfo中的數據,返回True的表示是重復數據
dup_bj = file_data_bjinfo.duplicated()
print(dup_bj)
# 檢測file_data_tjinfo中的數據,返回True的表示是重復數據
dup_tj = file_data_tjinfo.duplicated()
print(dup_tj)
# 對北京地區的數據,刪除重復值
drop_dup_bj = file_data_bjinfo.drop_duplicates()
print(drop_dup_bj)
# 檢測天津地區的數據是否存在缺失值
print(pd.isnull(file_data_tjinfo))
# 計算天津地區常住人口的平均數,設置float類型,并保留兩位小數
avg = float("{:.2f}".format(file_data_tjinfo['常住人口(萬人)'].mean()))
# 以字典映射的方式進行填充
values = {'常住人口(萬人)':avg}
file_data_tjinfo = file_data_tjinfo.fillna(value=values)
print(file_data_tjinfo)
# 對北京地區信息進行異常值檢測。并且用箱型圖進行表示
from matplotlib import pyplot as plt
plt.rcParams['font.family']=['STFangsong'] # 用來正常顯示中文標簽
plt.rcParams['axes.unicode_minus'] = False # 用來正常顯示負號
file_data_bjinfo.boxplot()
plt.show()
# 對天津地區信息進行異常值檢測。并且用箱型圖進行表示
file_data_tjinfo.boxplot()
plt.show()
# 對兩地數據進行合并
print(pd.concat([file_data_bjinfo,file_data_tjinfo],join='inner',axis=0,ignore_index=True))
數據
北京地區信息.csv
省級單位,地級單位,縣級單位,區劃類型,行政面積(K㎡),戶籍人口(萬人),男性,女性,GDP(億元),常住人口(萬人)
北京,北京,西城區,市轄區,51,146.47,72.88,73.59,3602.36,125.9
北京,北京,東城區,市轄區,42,97.41,47.91,49.5,2061.8,87.8
北京,北京,豐臺區,市轄區,306,115.33,58.39,56.95,1297.03,225.5
北京,北京,西城區,市轄區,51,146.47,72.88,73.59,3602.36,125.9
北京,北京,朝陽區,市轄區,455,210.91,105.43,105.48,5171.03,385.6
北京,北京,房山區,市轄區,1990,81.28,40.76,40.52,606.61,109.6
北京,北京,豐臺區,市轄區,306,115.33,58.39,56.95,1297.03,225.5
北京,北京,石景山區,市轄區,84,38.69,19.87,18.82,482.14,63.4
北京,北京,海淀區,市轄區,431,240.2,120.08,120.12,5395.16,359.3
北京,北京,房山區,市轄區,1990,81.28,40.76,40.52,606.61,109.6
北京,北京,通州區,市轄區,906,74.68,37.08,37.6,674.81,142.8
北京,北京,順義區,市轄區,1020,62.74,31.12,31.61,1591.6,107.5
北京,北京,昌平區,市轄區,1344,61.14,30.72,30.41,753.39,201
北京,北京,大興區,市轄區,1036,68.38,34.02,34.36,1796.95,169.4
北京,北京,門頭溝區,市轄區,1451,25.12,12.8,12.32,157.86,31.1
北京,北京,懷柔區,市轄區,2123,28.29,14.13,14.16,259.41,39.3
北京,北京,平谷區,市轄區,950,40.2,20.22,19.98,218.31,43.7
北京,北京,密云區,市轄區,2229,43.59,21.77,21.82,251.13,48.3
北京,北京,延慶區,市轄區,1994,28.42,14.32,14.11,122.66,32.7
天津地區信息.csv
省級單位,地級單位,縣級單位,區劃類型,行政面積(K㎡),戶籍人口(萬人),男性,女性,GDP(億元),常住人口(萬人)
天津,天津,和平區,市轄區,10,42.32,20.37,21.95,802.62,35.19
天津,天津,河東區,市轄區,39,75.79,38.06,37.73,290.98,97.61
天津,天津,河西區,市轄區,37,83.2,40.83,42.37,819.85,99.25
天津,天津,南開區,市轄區,39,87.28,43.3,43.98,652.09,114.55
天津,天津,河北區,市轄區,27,63.42,31.86,31.56,415.67,89.24
天津,天津,紅橋區,市轄區,21,51.66,25.93,25.73,208.16,56.69
天津,天津,東麗區,市轄區,460,37.7,18.83,18.87,927.08,76.04
天津,天津,西青區,市轄區,545,14.85,19.85,20.38,1040.27,85.37
天津,天津,津南區,市轄區,401,44.83,22.35,22.48,810.16,89.41
天津,天津,北辰區,市轄區,478,40.39,20.09,20.3,1058.14,
天津,天津,武清區,市轄區,1570,92.27,45.86,46.41,1151.65,119.96
天津,天津,寶坻區,市轄區,1523,71.1,35.72,35.39,684.07,92.98
天津,天津,濱海新區,市轄區,2270,128.18,66.04,62.14,6654,299.42
天津,天津,寧河區,市轄區,1414,40,20.21,19.79,525.37,49.57
天津,天津,靜海區,市轄區,1476,59.79,30.35,29.44,667.83,79.29
天津,天津,薊州區,市轄區,1593,86.24,43.86,42.38,392.55,91.15
原文鏈接:https://blog.csdn.net/weixin_44018458/article/details/128728961
相關推薦
- 2023-02-25 Golang嵌入資源文件實現步驟詳解_Golang
- 2023-10-12 antd3升級到antd4(已解決所有報錯)
- 2022-08-14 協同開發巧用gitignore中間件避免網絡請求攜帶登錄信息_Golang
- 2022-03-17 .net?程序通過?crontab?無法啟動手動執行腳本啟動的方法_實用技巧
- 2023-03-25 React?數據獲取條件競爭原理解析_React
- 2022-11-27 Ceph集群CephFS文件存儲核心概念及部署使用詳解_其它綜合
- 2022-06-29 python人工智能tensorflow函數tf.assign使用方法_python
- 2022-09-20 Python中類的mro與繼承關系詳解_python
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支