数据挖掘实训周报1

数据挖掘实训周报1
本阶段工作内容
一、了解甜橙金融杯大数据竞赛并报名,下载数据。

报名官网

二、配置本机环境。

因为使用的是Mac系统,所以配置环境相对简单,使用的是python3,以及使用pip3下载实训所需要用到的各种包。使用以下命令即可

sudo pip3 install numpy scipy pandas scikit-learn statsmodels matplotlib xgboost jupyter

在这里插入图片描述
在这里插入图片描述

三、学习数据挖掘涉及的主要python包。
1. numpy

学习链接1

学习链接2

numpy提供了大量的库函数和操作,主要用于对多维数组执行计算,以及对图像的处理和其他数学运算。

基本操作
  • 导入numpy。

import numpy as np

  • 声明数组/矩阵,注意,数组下标从0开始,和Matlab从1开始不一样。

array = np.array([1,2,3,4])

array = np.array([1,2,3,4],[1,2,3,4])

array = np.arange(10) 从0到9的数组。

array = np.array(0, 10, 2) 从0开始,每个元素间隔2,直到10(不包括10)

array = np.linspace(0, 10, 5) 0到10的5个等分数据,包括0和10。

  • 创建全0数组,全1数组,随机数组,长度为10。

array = np.zeros((10))

array = np.ones((10))

array = np.random.random((10))%注意是两个random,范围为0到1.

  • 创建全0矩阵,全1矩阵,随机矩阵,长度为10*10。

array = np.zeros((10,10))

array = np.ones((10,10))

array = np.random.random((10,10))

  • 输出第1行数据

array[0,:]

  • 矩阵±*/操作

array1 +-*/ array2,这是对元素进行操作,即元素是一对一进行±*/的。

  • 指数

array**2,这是对元素进行操作,即元素是一对一操作。

  • 矩阵乘法

array1.dot(array2)

  • 矩阵重塑,将一维矩阵转化为4*5的矩阵。

array = np.arange(20);array = array.reshape(4,5)

  • 矩阵信息

array.size 矩阵的元素个数

array.shape 矩阵的大小

进阶操作
  • 条件判断
  • 三木运算
  • 统计运算amax,amin,mean,std(方差)。其中参数axis=0为列,axis=1为行。

np.amax(array, axis=0)

  • 矩阵拼接

    • 垂直拼接np.vstack(array1,array2)
    • 水平拼接np.hstack(array1,array2)
  • 读取数据

    • np.genfromtxt('./xx.csv', delimiter=' '),第一个参数为路径,第二个参数为分隔符
    • 如果数值据有无法识别的值出现,会以nan显示,nan相当于np.nan,为float类型.
  • 更多见学习资料链接

2. pandas

学习链接1

学习链接2

pandas 是基于numpy的一个工具包,主要是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

import numpy as np

import pandas as pd

数据结构
  • 序列Series,类似于numpy中的一维数组,可以通过索引获取数据

    • Series = pd.Series(array)

    • series = {'a':1,'b':2,'c':3}

    • series = pd.Series(array, index),index为索引,array为value。与第一句区别为第一句索引默认0…1…n-1

    • 通过DataFrame的行列来创建序列。

  • 数据框DataFrame,数据以表格的形式存储,有行索引和列索引

    series = {'one':{'a':1,'b':2,'c':3,'d':4},two':{'a':5,'b':6,'c':7,'d':8},three':{'a':9,'b':10,'c':11,'d':12}}

    dataframe = pd.DataFrame(series)

    此时`dataframe就是一个行索引为a,b,c,d。列索引为one, two,three的4*3表格。

3. scipy

学习链接1

学习链接2

scipy是基于numpy上的,它提供了许多的操作numpy的数组的函数,是一款方便、易于使用、专为科学和工程设计的python工具包,它包括了统计、优化、整合以及线性代数模块、傅里叶变换、信号和图像图例,常微分方差的求解等。

scipy各子模块,表格来自博客https://blog.csdn.net/q583501947/article/details/76735870

模块名功能
scipy.cluster向量量化
scipy.constants数学常量
scipy.fftpack快速傅里叶变换
scipy.integrate积分
scipy.interpolate插值
scipy.io数据输入输出
scipy.linalg线性代数
scipy.ndimageN维图像
scipy.odr正交距离回归
scipy.optimize优化算法
scipy.signal信号处理
scipy.sparse稀疏矩阵
scipy.spatial空间数据结构和算法
scipy.special特殊数学函数
scipy.stats统计函数
4. scikit-learn

学习链接1

学习链接2

官方文档

SciKit-learn的简称是SKlearn,是一个python库,基于 Numpy 与 SciPy 两大著名工具包,专门用于机器学习的模块,包含了分类,回归,无监督,数据降维,数据预处理等常见的大部分机器学习方法。

官方结构图:
在这里插入图片描述

5. statsmodels

学习链接1

statsmodels是一个Python库,用于拟合多种统计模型,执行统计测试以及数据探索和可视化。statsmodels包含更多的“经典”频率学派统计方法,包含的一些模型如下:

  • 线性模型,广义线性模型和鲁棒线性模型
  • 线性混合效应模型
  • 方差分析(ANOVA)方法
  • 时间序列过程和状态空间模型
  • 广义的矩量法
6. matplotlib

官方文档

学习链接

matplotlib是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图。因为之前经常使用的是Matlab画图,差距不大,所以只是简单看了一遍。

7. xgboost

学习链接1

学习链接2

学习链接3

8. jupyter

学习资料1

学习资料2

Jupyter Notebooks 是一款开源的网络应用,我们可以将其用于创建和共享代码与文档。其提供了一个环境,你无需离开这个环境,就可以在其中编写你的代码、运行代码、查看输出、可视化数据并查看结果。

安装jupyter需要将pip3更新到最新版本。

pip3 install --upgrade pip

使用命令jupyter notebook,Jupyter Notebooks 会在默认浏览器打开,地址是:http://localhost:8888/tree

以下为成功打开tiancheng_base.ipynb文件

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值