Numpy 机器学习三剑客之Numpy
NumPy是Python语言的一个扩充程序库。支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。Numpy内部解除了Python的PIL(全局解释器锁),运算效率极好,是大量机器学习框架的基础库!
Numpy简单创建数组
nlist = np.array([1,2,3])
print(nlist)
#[1 2 3]
Numpy查看数组属性
#ndim方法用来查看数组维度
print(nlist.ndim) # #二维数组
nlist_2 = np.array([[1,2,3],[4,5,6]])
print(nlist_2)
print(nlist_2.ndim) #[[1 2 3]
# [4 5 6]]
# #使用shape属性来大印多维数组的形状
print(nlist.shape,nlist_2.shape)
#(3,) (2, 3) #使用size方法来打印多维数组的元素个数
print(np.size(nlist))
print(np.size(nlist_2))
#
# #打印numpy多维数组的数据类型
print(type(nlist))
#<class 'numpy.ndarray'> #使用dtype属性打印多维数组内部元素的数据类型
print(nlist.dtype)
#itemsizes属性,多维数组中的数据类型大小,字节
print(nlist.itemsize)
#data属性 打印数据缓冲区 buffer
print(nlist.data)
# int32
#
# <memory at 0x0000023047DB5C48>
快速创建N维数组的api函数
#使用ones方法,自动生成元素为1的多维数组
nlist_ones = np.ones((4,4))
print(nlist_ones)
print(nlist_ones.dtype) #[[1. 1. 1. 1.]
# [1. 1. 1. 1.]
# [1. 1. 1. 1.]
# [1. 1. 1. 1.]]
#float64 #zeros
nlist_zeros = np.zeros((4,4))
print(nlist_zeros)
#[[0. 0. 0. 0.]
# [0. 0. 0. 0.]
# [0. 0. 0. 0.]
# [0. 0. 0. 0.]] #使用empty方法来生成随机多维数组,使用第二参数指定数据类型
print(nlistempty)
#[[5.e-324 5.e-324]
# [0.e+000 0.e+000]]
#[[0 0]
# [0 0]]
nlist_3 = np.array(range(24)).reshape((3,2,4))
print(nlist_3)
print(nlist_3.shape)
nlist_float = np.array([1.0,2.0])
print(nlist_float.dtype)
#使用字符串
nlist_string=np.array(['','',''])
print(nlist_string.dtype) #[[[ 0 1 2 3]
# [ 4 5 6 7]]
#
# [[ 8 9 10 11]
# [12 13 14 15]]
#
# [[16 17 18 19]
# [20 21 22 23]]]
#(3, 2, 4)
#float64
#<U1
x = [1,2,3]
x = [(1,2,3),(4,5)]
nlist = np.asarray(x)
print(nlist) #[(1, 2, 3) (4, 5)]
my_str = b"hello world"
nlist_str = np.frombuffer(my_str,dtype='S1')
print(nlist_str) #[b'h' b'e' b'l' b'l' b'o' b' ' b'w' b'o' b'r' b'l' b'd']
sum0 = np.sum(x,axis=0,keepdims=False)
print(sum0)
sum1 = np.sum(x,axis=1,keepdims=1)
sum = np.sum(x,axis=1,keepdims=0)
print(sum1,sum) #[4 6]
#[[3]
# [7]]
#[3 7]
a = np.array([[1,2],[3,4],[5,6]])
b = np.array([[10,20],[30,40],[50,60]]) #vstack方法
suma = np.vstack((a,b))
print(suma)
print("-"*30)
#hstack方法
sumb = np.hstack((a,b))
print(sumb) #[[ 1 2]
#[ 3 4]
# [ 5 6]
# [10 20]
# [30 40]
# [50 60]]
------------------------------
#[[ 1 2 10 20]
# [ 3 4 30 40]
# [ 5 6 50 60]]
nlist=np.array([[1,2],[3,4],[5,6]])
print(nlist[1][1])
print(nlist[1,1])
#删除方法 delete
#s删除nlist第二行
print(np.delete(nlist,1,axis=0))
print(np.delete(nlist,0,axis=1)) #
#
#[[1 2]
# [5 6]]
#[[2]
# [4]
# [6]]
**未完待续
Numpy 机器学习三剑客之Numpy的更多相关文章
- Python:机器学习三剑客之 NumPy
一.numpy简介 Numpy是高性能科学计算和数据分析的基础包,机器学习三剑客之一.Numpy库中最核心的部分是ndarray 对象,它封装了同构数据类型的n维数组.部分功能如下: ndarray, ...
- 机器学习三剑客之Numpy库基本操作
NumPy是Python语言的一个扩充程序库.支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库.Numpy内部解除了Python的PIL(全局解释器锁),运算效率极好,是大量机 ...
- 机器学习三剑客之Numpy
Numpy NumPy是Python语言的一个扩充程序库.支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库.Numpy内部解除了Python的PIL(全局解释器锁),运算效 ...
- 机器学习 三剑客 之 pandas + numpy
机器学习 什么是机器学习? 机器学习是从数据中自动分析获得规律(模型),并利用规律对未知数据进行预测 机器学习存在的目的和价值领域? 领域: 医疗.航空.教育.物流.电商 等... 目的: 让机器学习 ...
- 数据分析三剑客之numpy
Numpy 简介 数据分析三剑客:Numpy,Pandas,Matplotlib NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算, ...
- python数据分析三剑客之: Numpy
数据分析三剑客之: Numpy 一丶Numpy的使用 numpy 是Python语言的一个扩展程序库,支持大维度的数组和矩阵运算.也支持针对数组运算提供大量的数学函数库 创建ndarray # 1 ...
- 机器学习之路--Numpy
常用代码 ndarray.dtype 数据类型必须是一样的 常用代码 import numpy #numpy读取文件 world_alcohol = numpy.genfromtxt("wo ...
- 【numpy】新版本中numpy(numpy>1.17.0)中的random模块
numpy是Python中经常要使用的一个库,而其中的random模块经常用来生成一些数组,本文接下来将介绍numpy中random模块的一些使用方法. 首先查看numpy的版本: import nu ...
- 《机器学习实战》---NumPy
NumPy库函数基础: 机器学习算法涉及很多线性代数知识. NumPy库中有很多线性代数计算. 之所以用到线性代数只是为了简化不同的数据点上执行的相同数学运算.将数据表示为矩阵形式, 只需要执行简单的 ...
随机推荐
- git命令之git clone用法
在使用git来进行版本控制时,为了得一个项目的拷贝(copy),我们需要知道这个项目仓库的地址(Git URL). Git能在许多协议下使用,所以Git URL可能以ssh://, http(s):/ ...
- 关于指针*前后const代表的意思——记住一个口诀“左内右本”
记住一个口诀“左内右本”:const出现在*的左边,则说明指针所指向的内容是常量const出现在*的右边,则说明指针本身是常量如果*左右两边都出现const,那么说明指针本事是常量,它所指向的内容也是 ...
- 关于Unity中NGUI的背包实现之Scrollview(基于Camera)
基于UIPanel的scrollview实现方式在移动设备上的性能不如基于camera的方式.因为UIPanel的scrollview实现方式要渲染很多的道具图,性能自然就降低了.如果是用第二个摄像机 ...
- windows python3.7安装numpy问题的解决方法
我的是win7的系统,去python官网下载python3.7安装 CMD #打开命令窗口 pip install numpy #在cmd中输入 提示 需要c++14.0, 解决办法: 1, 进入h ...
- [Laravel] 10 - WEB API : wrapper
前言 一.常用的解决方案 React 前端 + PHP (Laravel) 后端 Such as "some exposure to WEB API’s and/or RESTful“. 使 ...
- 【zheng阅读系列】shiro权限管理
一.配置文件 upms-server/springMVC-servlet.xml <?xml version="1.0" encoding="UTF-8" ...
- 如何用Baas快速在腾讯云上开发小程序-系列3 :实现腾讯云COS API调用
版权声明:本文由贺嘉 原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/640268001487425627 来源:腾云阁 h ...
- NIO相关概念之Buffer
Buffer的定义: 概念上,缓冲区是包在一个对象内的基本数据元素数组.Buffer类相比一个简单数组的优点是它将关于数据的数据内容和信息包含在一个单一的对象中.Buffer类以及它专有的子类定义了一 ...
- mui---自定义页面打开的方向
在使用MUI做APP的时候,会考虑对页面的打开方向做规定,MUI也给我们提供了很多种页面的打开方式. 具体参考: http://ask.dcloud.net.cn/question/174 MUI做A ...
- 在移动端如何用swiper实现导航栏效果
我们在写移动端的时候会有滑动和点击导航后滑动到目标页面功能:而这个功能如果自己写的话会很麻烦,所以我在这推荐一下swiper这个插件. 其实swiper中的官网中也有这种功能的实现,但是我认为是有点麻 ...