NumPy是Python语言的一个扩充程序库。支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。Numpy内部解除了Python的PIL(全局解释器锁),运算效率极好,是大量机器学习框架的基础库!
安装命令为:pip install numpy
编辑器中具体代码如下:
#导入numpy 库
import numpy as np
#打印版本号
# print(np.version.version)
#声明一个numpy 一维数组
nlist = np.array([1,2,3])
print(nlist)
#ndim方法用来查看数组维度
print(nlist.ndim)
print('==================')
#声明一个二维数组
nlist_2 = np.array([[1,2,3,4],[4,5,6,7]])
print(nlist_2)
print(nlist_2.ndim)
print('==================')
#使用shape 属性打印多维数组得形状
print(nlist.shape)
print(nlist_2.shape)
print('==================')
#使用size方法来打印多维数组得元素个数
print(np.size(nlist))
print(np.size(nlist_2))
print('==================')
#打印numpy多维数组得数据类型
#打印普通list
print(type([1,2,3]))
print(type(nlist))
print('==================')
#使用dtype属性来打印多维数组内部元素得数据类型
print(type(123))
print(nlist.dtype)
print('==================22222222222')
#itemsize属性,来打印多维数组中得数据类型大小,字节
print(nlist.itemsize)
print('==================11111')
#data属性,用来打印数据缓冲区 buffer
print(nlist.data)
print('==================')
#声明三维数组
nlist_3 = np.array([[[1,2,3],[4,5,6],[7,8,9,]]])
print(nlist_3.ndim)
print('==================')
#使用reshape方法来反向生成多维数组
nlist_4 = np.array(range(32)).reshape(4,2,2,2)
print(nlist_4)
print(nlist_4.ndim)
print('==================')
#使用浮点作为元素类型
nlist_float = np.array([1.0,2.0,3.0])
print(nlist_float.dtype)
print('==================')
#使用字符串
nlist_string = np.array(['1','2','3'])
print(nlist_string.dtype)
print('==================')
#使用ones方法 自动生成元素为1 的所谓数组
nlist_ones = np.ones((4,4))
print(nlist_ones)
print((nlist_ones.dtype))
print('==================')
#使用zero来生成元素为0的数组
nlist_zeros = np.zeros((4,4))
print((nlist_zeros))
print(nlist_zeros.dtype)
print('==================')
#使用 empty 生成多维随机数组,使用第二个参数指定数据类型
nlist_empty = np.empty([2,2],dtype=np.int)
print((nlist_empty))
print(nlist_empty.dtype)
print((nlist_empty.ndim))
print('==================')
#把普通list转换为数组
x = [1,2,3]
x = [(1,2,3),(4,5)]
print(type(x))
nlist = np.asarray(x)
print(type(nlist))
print(nlist.ndim)
print(nlist.shape)
print('==================')
# frombuffer 通过字符串(buffer内存地址)切片来生成多维数组
my_str = b'hello world'
nlist_str = np.frombuffer(my_str,dtype='S1')
print(nlist_str)
print('==================')
x = np.array([[1,2],[3,4]])
print(x)
#指定axis属性可以指定当前多维数组的维度 sum是跨维度列级求和
sum0 = np.sum(x,axis=0,keepdims=True) # axis=0 是跨维度列级相加
print(sum0)
sum1 = np.sum(x,axis=1,keepdims=True) # axis = 跨维度行级相加
print(sum1)
print('==================')
#多维数组赋值 根据列表下标原理
y = np.array([1,2])
z = y.copy()
y[0] = 3
y[1] = 3
print(z)
print('==================')
#维度级的运算
a = np.array([[1,2],[3,4],[5,6]])
b = np.array([[11,21],[13,41],[15,61]])
#vasack方法 (添加)
suma = np.vstack((a,b))
print(suma)
#hstack方法(混和)
sumb = np.hstack((a,b))
print(sumb)
print('==================222222222222222')
#多维数组调用
nlist = np.array([[1,2],[3,4],[5,6]])
#取元素4
print(nlist[1][1])
#第二种写法
print(nlist[1,1])
#修改
nlist[2,1] = 7
print(nlist)
#删除方法 delete
# 删除nlist 第二行
print('==================')
print(np.delete(nlist,1,axis=0))
print(np.delete(nlist,0,axis=1))
- Python:机器学习三剑客之 NumPy
一.numpy简介 Numpy是高性能科学计算和数据分析的基础包,机器学习三剑客之一.Numpy库中最核心的部分是ndarray 对象,它封装了同构数据类型的n维数组.部分功能如下: ndarray, ...
- Numpy 机器学习三剑客之Numpy
NumPy是Python语言的一个扩充程序库.支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库.Numpy内部解除了Python的PIL(全局解释器锁),运算效率极好,是大量机 ...
- 机器学习三剑客之Numpy
Numpy NumPy是Python语言的一个扩充程序库.支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库.Numpy内部解除了Python的PIL(全局解释器锁),运算效 ...
- 初识NumPy库-基本操作
ndarray(N-dimensional array)对象是整个numpy库的基础. 它有以下特点: 同质:数组元素的类型和大小相同 定量:数组元素数量是确定的 一.创建简单的数组: np.arra ...
- 机器学习中的numpy库
日常学习中总是遇到数据需要处理等问题,这时候我们就可以借助numpy这个工具来做一些有意思的事. 1.生成随机数的几种方式 x=np.random.random(12) ###生成12 ...
- 机器学习 三剑客 之 pandas + numpy
机器学习 什么是机器学习? 机器学习是从数据中自动分析获得规律(模型),并利用规律对未知数据进行预测 机器学习存在的目的和价值领域? 领域: 医疗.航空.教育.物流.电商 等... 目的: 让机器学习 ...
- numpy库常用基本操作
NumPy数组的维数称为秩(rank),一维数组的秩为1,二维数组的秩为2,以此类推.在NumPy中,每一个线性的数组称为是一个轴(axes),秩其实是描述轴的数量.比如说,二维数组相当于是一个一维数 ...
- 机器学习 Numpy库入门
2017-06-28 13:56:25 Numpy 提供了一个强大的N维数组对象ndarray,提供了线性代数,傅里叶变换和随机数生成等的基本功能,可以说Numpy是Scipy,Pandas等科学计算 ...
- (零)机器学习入门与经典算法之numpy的基本操作
1.根据索引来获取元素* 创建一个索引列表ind,用来装载索引,当numpy数据是一维数据时:一个索引对应的是一个元素具体的例子如下: import numpy as np # 数据是一维数据时:索引 ...
随机推荐
- Socket编程(网络编程)
网络通信的第一要素:IP地址 通过IP地址唯一的定位到互联网的主机 通过 IP+port(端口号) 来确定互联网的主机上的某个软件 InetAddress:位于java.net包下 getHostNa ...
- Django-Oscar小记:如何使用高版本Django开发网页的SEO模块
在使用Google搜索Django的SEO插件时,很多插件都没有更新到Python3.x,有的插件更新到了Python的高版本,但是不适用于Django的2.x. Django在升级到版本2.x的时候 ...
- css:Media Queries: How to target desktop, tablet and mobile?
<!doctype html> <html> <head> <meta name="viewport" content="wid ...
- php对二维数据排序
对于一维数组排序比较简单,像使用sort(),asort(),arsort()等函数进行排序,但是对于二维数组比较麻烦,所有借鉴网上的总结了一下 // 对二维数组进行指定key排序 $arr 二维数组 ...
- 20.Odoo产品分析 (三) – 人力资源板块(1) – 员工目录(1)
查看Odoo产品分析系列--目录 人力资源指在一个国家或地区中,处于劳动年龄.未到劳动年龄和超过劳动年龄但具有劳动能力的人口之和.狭义讲就是企事业单位独立的经营团体所需人员具备的能力(资源).(解释来 ...
- ChakraCore/JSRT使用问题汇总
QQ交流群:523723780(ChakraCore) ChakraCore是什么? 一个微软开源的,用于Windows IE/Edge内核的高效JS脚本引擎. 前不久微软开源了ChakraCore, ...
- 单用户模式启动SQL Server实例总结
在SQL Server的数据库维护过程中,有时候在一些特殊情况下需要在单用户模式下启动SQL Server实例. 下面总结一下单用户模式启动SQL Server的几种方式: 1:命令模式(sqls ...
- List泛型与DataTable相互转换
public static class ExtensionMethods{/// <summary>/// 将List转换成DataTable/// </summary>/// ...
- C# DBHelper类 参考
using System;using System.Collections.Generic;using System.Text;using System.Configuration;using Sys ...
- 两个Map的对比,三种方法,将对比结果写入文件。
三种方法的思维都是遍历一个map的Key,然后2个Map分别取这2个Key值所得到的Value. #第一种用entry private void compareMap(Map<String, S ...