Python大数据与机器学习之NumPy初体验
本文是Python大数据与机器学习系列文章中的第6篇,将介绍学习Python大数据与机器学习所必须的NumPy库。
通过本文系列文章您将能够学到的知识如下:
应用Python进行大数据与机器学习
应用Spark进行大数据分析
实现机器学习算法
学习使用NumPy库处理数值数据
学习使用Pandas库进行数据分析
学习使用Matplotlib库进行Python绘图
学习使用Seaborn库进行统计绘图
使用Plotly库进行动态可视化
使用SciKit-learn处理机器学习任务
K-Means聚类
逻辑回归
线性回归
随机森林与决策树
自然语言处理与垃圾邮件过滤
神经网络
支持向量机
另外小编也会拥抱变化,根据评论中的需求情况增加其它有意义的内容。例如增加一些相关面试题等等。
什么是NumPy
NumPy是非常重要的Python数值计算扩展库,基本整个Python大数据生态都依赖它,并且由于绑定了C语言库,因此速度非常快。可以说我们要学好Python大数据,必须要学的就是NumPy库了。
安装NumPy
如果你根据之前的文章安装了anaconda,那么你已经默认安装了NumPy库了。如想单独安装请继续往下看。
使用conda安装的命令:
conda install numpy
使用pip安装的命令:
pip install numpy
NumPy array
本系列文章主要用到的是numpy的array(数组);
numpy array有两种基本形式:vector(向量)和matrics(矩阵)
vector是一维的,而matrics是二维的。
打开Jupyter,输入如下内容:
import numpy as np
my_list = [1,2,3]
arr = np.array(my_list)
arr
运行得到如下结果:
以上就是vector的一般形式
继续输入如下内容:
my_mat = [[1,2,3],[4,5,6],[7,8,9]]
np.array(my_mat)
运行得到如下结果:
以上就是二维matrics矩阵。
numpy有自己的range函数
np.arange(0,10)
运行结果如下:
还可以指定步长np.arange(0,10,2)
运行结果如下:
生成所有元素为0的向量np.zeros(3)
运行结果如下:
生成所有元素为0的矩阵np.zeros((5,5))
运行结果如下:
同样生成所有元素为1的向量和矩阵分表为np.ones(4),np.ones((2,3))
运行结果如下:
np.linspace(0,5,20)
第一个参数是起始点,第二个参数是结束点,第三个参数是从起点到终点距离分成多少份。
运行结果如下:
np.eye(4)生成4*4的主对角线为1的矩阵
运行结果如下:
np.random.rand(5)生成随机向量
运行结果如下:
np.random.rand(5,5)生成5*5的随机向量
运行结果如下:
np.random.randn(2)生成标准正态分布曲线。
运行结果如下:
np.random.randn(4,4)二维的标准正态分布曲线
运行结果如下:
提示:
在Jupyter输入框中按tab键可以提示联想菜单,按shift+tab可以提示函数用法
按tab键
按shift+tab键
np.random.randint(1,100)生成1个1到100之间的随机整数,不包含100
运行结果如下:
np.random.randint(1,100,10)生成10个1到100之间的随机整数,不包含100
运行结果如下:
array类型支持的一些函数:
reshape函数可以修改array的维数。例如:
arr = np.arange(25)
arr.reshape(5,5)
运行结果如下:
max函数:最大值
min函数:最小值
argmax函数:返回最大值的索引
argmin函数:返回最小值的索引
ranarr = np.random.randint(1,100,10)
ranarr.max()
ranarr.min()
ranarr.argmax()
ranarr.argmin()
运行结果如下:
shape函数,返回array的大小
dtype,返回数据类型
调用简化:
from numpy.random import randint
我们就可以直接使用randint了
randint(2,10)
运行结果如下:
Python大数据与机器学习之NumPy初体验的更多相关文章
- 零基础入门到精通:Python大数据与机器学习之Pandas-数据操作
在这里还是要推荐下我自己建的Python开发学习群:483546416,群里都是学Python开发的,如果你正在学习Python ,小编欢迎你加入,大家都是软件开发党,不定期分享干货(只有Python ...
- 零起点PYTHON足彩大数据与机器学习实盘分析
零起点PYTHON足彩大数据与机器学习实盘分析 第1章 足彩与数据分析 1 1.1 “阿尔法狗”与足彩 1 1.2 案例1-1:可怕的英国足球 3 1.3 关于足彩的几个误区 7 1.4 足彩·大事件 ...
- 《零起点,python大数据与量化交易》
<零起点,python大数据与量化交易>,这应该是国内第一部,关于python量化交易的书籍. 有出版社约稿,写本量化交易与大数据的书籍,因为好几年没写书了,再加上近期"前海智库 ...
- H2O是开源基于大数据的机器学习库包
H2O是开源基于大数据的机器学习库包 H2O能够让Hadoop做数学,H2O是基于大数据的 统计分析 机器学习和数学库包,让用户基于核心的数学积木搭建应用块代码,采取类似R语言 Excel或JSON等 ...
- 学习推荐《零起点Python大数据与量化交易》中文PDF+源代码
学习量化交易推荐学习国内关于Python大数据与量化交易的原创图书<零起点Python大数据与量化交易>. 配合zwPython开发平台和zwQuant开源量化软件学习,是一套完整的大数据 ...
- 零起点Python大数据与量化交易
零起点Python大数据与量化交易 第1章 从故事开始学量化 1 1.1 亿万富翁的“神奇公式” 2 1.1.1 案例1-1:亿万富翁的“神奇公式” 2 1.1.2 案例分析:Python图表 5 1 ...
- 【阿里云产品公测】结构化数据服务OTS之JavaSDK初体验
[阿里云产品公测]结构化数据服务OTS之JavaSDK初体验 作者:阿里云用户蓝色之鹰 一.OTS简单介绍 OTS 是构建在阿里云飞天分布式系统之上的NoSQL数据库服务,提供海量结构化数据的存储和实 ...
- python大数据
http://blog.csdn.net/xnby/article/details/50782913 一句话总结:spark是一个基于内存的大数据计算框架, 上层包括了:Spark SQL类似Hive ...
- 使用 .NET 5 体验大数据和机器学习
翻译:精致码农-王亮 原文:http://dwz.win/XnM .NET 5 旨在提供统一的运行时和框架,使其在各平台都有统一的运行时行为和开发体验.微软发布了与 .NET 协作的大数据(.NET ...
随机推荐
- 热点 | 近期Github热点项目库总结
整理 | Walker 介绍:你有没有想过你会成为一个艺术家,但无奈你不知道如何画画?得益于计算机视觉技术,你可以在ML社区轻松实现这个梦想.更棒的是,Github上ML社区的代码都是开源的! 这就是 ...
- 重磅!刷新两项世界纪录的腾讯优图人脸检测算法DSFD开源了!
近日,知名开源社区Github上有个名为DSFD(Dual Shot Face Detector)的算法引起了业内关注,它正是来自于腾讯优图.目前,该算法已经被计算机视觉顶级会议CVPR 2019接收 ...
- python之常用模块ymal
在学习python如何操作yml文件之前,我们先科普一下yml的格式 yaml是专门写配置文件的语言,非常简洁和强大,比json更加方便 YAML 语言(发音 /ˈjæməl/ )的设计目标,就是方便 ...
- flutter源码学习笔记-图片加载流程
本文基于1.12.13+hotfix.8版本源码分析. 0.大纲 Image ImageProvider 图片数据加载 ImageStream.ImageStreamCompleter 缓存池 Pai ...
- 学习笔记-EL
仅作为学习过程中笔记作用,若有不正确的地方欢迎指正 目标 理解El的作用,熟练使用EL EL表达式与Jsp表达式对比来记 EL表达式的概念,作用,语法 Jsp作用主要是用来实现动态网页的,而动态网页中 ...
- CSS3实现3D转换
实现效果: 当鼠标悬停在图片上面时,图片发生翻转,文案出来,鼠标取消之后就又恢复 实现代码: <!DOCTYPE html> <html lang="en"> ...
- JavaScript/JQuery对图片放大或缩小失效
将图片的父元素的宽度和高度也设置后,问题解决.Got it!
- ClickHouse学习系列之三【配置文件说明】
背景 最近花了些时间看了下ClickHouse文档,发现它在OLAP方面表现很优异,而且相对也比较轻量和简单,所以准备入门了解下该数据库系统.在介绍了安装和用户权限管理之后,本文对其配置文件做下相关的 ...
- PTA | 1008 数组元素循环右移问题 (20分)
一个数组A中存有N(N>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(M>=0)个位置,即将A中的数据由(A0 A1--AN-1)变换为(AN-M -- AN-1 A0 ...
- k8s集群搭建笔记(细节有解释哦)
本文中所有带引号的命令,请手动输入引号,不知道为什么博客里输入引号,总是自动转换成了中文 基本组成 pod:k8s 最小单位,类似docker的容器(也许) 资源清单:资源.资源清单语法.pod生命周 ...