脚本宝典收集整理的这篇文章主要介绍了机器学习前数据分析基础知识,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
步骤
数据导入 - > 数据处理 - > 数据分析和数据挖掘 -> 数据展示 - > 报告撰写
本章展示前两部,将数据导入以及处理异常数据
1. 读取文件或数据库
csv文件
书写一个ex1.csv文件 编号,姓名,年龄,职业 1,张三,12,学生 2,李四,20,厨师 3,王梅,23,护士
import pandas as pd data=pd.read_csv('ex1.csv') print("read_csv:n",data)
Excel文件
import pandas as pd xlsx = pd.ExcelFile('data.xlsx') data = pd.read_excel(xlsx,'sheel2') print("read_csv:n", data) 或是 data = pd.read_excel('data.xlsx','sheel2') print("read_csv:n", data)
数据库
import sqlite3 import pandas as pd query = "select * from user;" con = sqlite3.connect('testSqlite') cursor = con.execute(query) data = cursor.fetchall() print("data from db:n",data) #把数据转换DataFrame df = pd.DataFrame(data , columns=[x[0] for x in cursor.description]) print("DataFrame is:n",df)
2.数据清理
(1)数据类型概览和类型转换
概览
data.info()
数据规模
data.shape
数据类型
data.dtypes
预览前5行数据
data.head()
预览最后5行数据
data.tail()
data['sbelongwhere'] = data['sbelongwhere'].astype(str) #转str类型 data['id'] = data['id'].str[1:].astype(float) #转数值类型 data['birthday'] = pd.to_datetime(data['birthday'], format='%Y-%m-%d') #转日期类型
(2)处理缺失值
# 判断数据是否有缺失 data.isnull() # 去除缺失值 去除包含缺失值的数据 data.dropna() 去除有缺失值的列 data.dropna(axis=1) # 填充数据 用0填充缺失值 data.fillna(0) 用字典填充缺失值 data.fillna({"年龄":"--","职业":"未知"})
(3)处理重复数据
# 查看数据是否有重复 data.duplicated() # 某列是否有重复数据 data.duplicated(['id']) # 删除重复数据 # 1. 删除重复行 data.drop_duplicated() # 2. 删除A列重复数据 data.drop_duplicated(['id'])
(4)数据转换
#时间戳转日期 data['date'] = pd.to_datetime(data['date'],unit='s',origin=pd.Timestamp('2000-01-01 00:00:00')) #用字典替换某一列的值 例如行政区划代码转化地名 city_to_country = { '1301': '石家庄市', '1302': '唐山市', '1303': '秦皇岛市', '1304': '邯郸市', '1305': '邢台市', '1306': '保定市', '1307': '张家口市', '1308': '承德市', '1309': '沧州市', '1310': '廊坊市', '1311': '衡水市' } data['address'] = data['address'].map(city2)
以上是脚本宝典为你收集整理的机器学习前数据分析基础知识全部内容,希望文章能够帮你解决机器学习前数据分析基础知识所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。