所谓数据分析,即对已知的数据进行分析,然后提取出一-些有价值的信息,比如统计出平均数、标准差等信息,数据分析的数据量有时可能不会太大,而数据挖掘,是指对大量的数据进行分析与挖掘,得到一些未知的,有价值的信息等,比如从网站的用户或用户行为数据中挖掘出用户的潜在需求信息,从而对网站进行改善等。数据分析与数据挖掘密不可分,数据挖掘是数据分析的提升。
数据分析与挖掘技术能做什么事情?
数据挖掘技术可以帮助我们更好的发现事物之间的规律。所以,我们可以利用数据挖掘技术实现数据规律的探索,比如发现窃电用户、发掘用户潜在需求、实现信息的个性化推送、发现疾病与症状甚至疾病与药物之间的规律..... .等。
数据挖掘的过程主要有:
1、定义目标
2、获取数据(常用的手段有通过爬虫采集或者下载一些统计网站发布的数据)
3、 数据探索
4、数据预处理(数据清洗(去掉脏数据]、数据集成 [集中]、数据变换[规范化]、数据规约[精简] )
5、挖掘建模(分类、聚类、关联、预测)
6、模型评价与发布
相关模块简介:
1、numpy可以高效处理数据、提供数组支持、很多模块都依赖他,比如pandas、scipy、matplotlib都依赖他 ,所以这个模块是基础。
2、pandas 我们课程后续用得最多的一个模块,主要用于进行数据探索和数据分析。
3、matplotlib 作图模块,解决可视化问题。
4、scipy 主要进行数值计算,同时支持矩阵运算,并提供了很多高等数据处理功能,比如积分、傅里叶变换、微分方程求解等。
5、statsmodels 这个模块主要用于统计分析
6、Gensim 这个模块主要用于文本挖掘
7、sklearn、 keras 前者机器学习,后者深度学习
模块安装的顺序与方式建议如下:
1、numpy. mkl (下载安装)
2、pandas (网络安装)
3、matplotlib (网络安装)
4、scipy( 下载安装)
5、statsmodels (网络安装)
6、Gensim (网络安装)
Numpy模块
import numpy
#创建数组格式
#numpy.array([元素1,元素2,。。。,元素3])
x=numpy.array(['3',6,8,22])
#创建二维数组格式
#numpy.array([[元素1,元素2,。,元素3],[元素1,元素2,。。。,元素3],)
y=numpy.array([['3',13,10],[9,6,5],[4,5,6]])
#排序sort()
x.sort()
y.sort()
#取最大值和最小值
y1=y.max()
y2=y.min()
#切片操作
#数组[起始下标:最终下标+1]
x1=x[1:3]
x2=x[:2]
取数组元素:
>>> x[2]
'8'
>>> y[1][2]
'5'
Pandas模块
import pandas as pda
'''
Series代表某一串数据#index索引
DataFrame数据框
''’
a=pda.Series([8,9,2,1])
b=pda.Series([8,9,2,1],index=['one','two','three','four'])#指定索引格式
c=pda.DataFrame([[5,6,2,3],[8,4,6,3],[6,4,31,2]])
#加columns添加列名
d=pda.DataFrame([[5,6,2,3],[8,4,6,3],[6,4,31,2]],columns=['one','two','three','four'])
#通过字典的格式创建数据框
e=pda.DataFrame({
'one':4,
'two':[6,2,3],
'three':list(str(982))})#前面的索引代表列名
d.head()#代表数据框的头部数据,默认显示前五行
#d.head(行数)
d.tail()#默认取尾部数据后五行
#d.tail(行数)
#展示数据的统计情况,按列进行统计
d.describe()结果如图
count表示每一列多少个数;mean表示每一列的平均数;std每一列的标准差;min每一列的最小值;25%,50%,75%表示分位数;max表示最大值。
#转置 d.T