1.Numpy使用场景

  1. 需要批量处理数据的时候
  2. 机器学习,人工智能这些需要进行海量数据运算处理的地方
  3. 写游戏里面的物体运行逻辑时,经常涉及到矩阵、向量运算
  4. 机器人模拟环境,背后的环境反馈信息,全是靠批量数据算出来的
  5. 任何需要做统计的时候(爬虫爬完了信息后) 画图表之前,要对数据做一轮批量处理
  6. Blah blah

2.Numpy安装【Windows】

  1. win + r 进入控制面板,输入cmd,回车进入终端

  2. 用pip安装
    在终端输入:pip install numpy回车即可进行安装
    如果是Python3.x版本,用pip3 install numpy进行安装

    检查是否安装成功:
    ①在终端输入python进入python环境
    ②输入import numpy,没有错误提示,则表示安装成功。

3. Numpy array

Numpy array的一大优势就是速度快!

import numpy as np
arrayName = np.array([1,2,3]) #numpy的array和list的查询、更新、删除是相同的,#不同的是array存储的数据是相同类型的,按照顺序存储在内存里,操作array的速度更快
print(arrayName, type(arrayName))
print("arrayName[1]=",arrayName[1])
arrayName[1] = 99  #通过下标修改
print("after modified, arrayName[1]=",arrayName[1])

运行结果:

4.数据维度

  1. 创建数据
    np.array()
    array.ndim:返回数据维度
  2. 添加数据
    np.concatenate()
    np.expand_dims()
  3. 合并数据
    np.concatenate()
    np.vstack() #用于二维数据
    np.hstack()
  4. 观察形态
    array.size array.shape

5.数据选取

  1. 单个选取
    array[1]
    array[1,2,3]
    array[1][1]
    array[[1,2]]
  2. 切片划分
    array[:3]
    array[2:4, 1:3]
  3. 条件筛选
    array[array<0]
    np.where(array, array < 0)
import numpy as np
b = np.array([
[1,2,3,4],
[5,6,7,8],
[9,10,11,12],
[13,14,14,15]])print("b[2]=", b[2]) #查看第二行所有数据(从0列开始)
print("b[2,1]=", b[2,1])#查看第二行第一列的值
#切片,格式:(起始坐标:结束坐标:间隔)左闭右开
print("b[0:4:2]=", b[0:4:2])  #第0行、2行
print("b[0:4:2, 0:2:1]=",b[0:4:2, 0:2:1] ) #第0行、2行,第0列、第2列,逗号表示行列的分隔符#条件筛选array[ condition,]
# np.where(condition,x,y)当满足condition,将此处的值更改为x,否则改为y
condition = b > 6
print("condition =", condition)
print("b[condition]=", b[condition])
print("np.[condition,1]=", np.where(condition,1,b)) #满足条件的替换为1,不满足条件的不替换

运行结果:

6运算

加减乘除
±*/
np.dot()
数据统计分析
np.max() np.min() np.sum() np.prod() np.count()
np.std() np.mean() np.median()
特殊运算符号
np.argmax() np.argmin()
np.ceil() np.floor() np.clip()

import numpy as np
arrayA = np.array([122.2,156.3,723.1])
arrayB = np.array([12,16,1])#加减乘除操作是直接对array的值进行操作,用列表的名字就可以操作
print("+",arrayA + 0.1)
print("-",arrayA - 0.1)
print("*",arrayA * 0.1)
print("/",arrayA / 0.1)#点乘积
print("dot",arrayA.dot(arrayB))
print(arrayB)#最值、求和
print("max", arrayA.max())
print("min", arrayA.min())
print("max_index", arrayA.argmax())
print("min_index", arrayA.argmin())print("sum", arrayA.sum())
#大小
print("size", arrayA.size)
#平均值
print("mean",arrayA.mean())
#标准差
print("std", arrayA.std())
#上下限截取,低于下限的按照下限处理
print("arrayA.clip(100,200)", arrayA.clip(100,200))

运行结果:

7 改变数据形态

  1. 改变形态
    array[np.newaxis, :]
    array.reshape()
    array.ravel(), array.flatten()
    array.transpose()
  2. 合并
    np.column_stack(), np.row_stack()
    np.vstack(), np.hstack(), np.stack()
    np.concatenate()
  3. 拆解
    np.vsplit(), np.hsplit(), np.split()
import numpy as np
arrayA = np.array([1,2,3,4,5,6,7,8]).reshape([2,4])#增加维度,np.expand_dims(array,axis ),
#原来的维度(2,4),扩展后:
# axis=0 ———>(1,2,4)
# axis=1 ———>(2,1,4)
# axis=2 ———>(2,4,1)
print(np.expand_dims(arrayA,axis =2).shape) #打印(2,4,1)
print(arrayA.shape)
#reshape
print(arrayA.reshape([2,1,4]))  #[层数、行数,列数]
#转置
print(arrayA.shape)
print(arrayA.transpose().shape)
#分割,np.split(array, indices_or_sections, axis)
#indices_or_sections等于整数时,表示均分,是数组时,表示按照print(np.split(arrayA, indices_or_sections =4 , axis=1))  #分割和维数拓展都是np下的函数
print(np.split(arrayA, indices_or_sections =[1,3] , axis=1))  #在 第一列右边、第三列右边切割

运行结果:

【Numpy学习笔记1】numpy安装、维度、基本运算、改变数据形态相关推荐

  1. numpy 学习笔记

    numpy 学习笔记 导入 numpy 包 import numpy as np 声明 ndarray 的几种方法 方法一,从list中创建 l = [[1,2,3], [4,5,6], [7,8,9 ...

  2. NumPy学习笔记前言

    前言目录 NumPy学习笔记前言 NumPy简介 NumPy学习准备 NumPy中文网 NumPy学习笔记前言 这里主要分享一下我个人学习NumPy的笔记,希望大家多多交流学习,这也是我第一次写CSD ...

  3. 【Numpy学习笔记】

    Numpy学习笔记 1. NumPy的详细教程(官网手册翻译) https://blog.csdn.net/xiaoxiangzi222/article/details/53084336 2. 学习笔 ...

  4. Numpy学习笔记(下篇)

    目录 Numpy学习笔记(下篇) 一.Numpy数组的合并与分割操作 1.合并操作 2.分割操作 二.Numpy中的矩阵运算 1.Universal Function 2.矩阵运算 3.向量和矩阵运算 ...

  5. NumPy学习笔记 一

    NumPy学习笔记 一 <NumPy学习笔记>系列将记录学习NumPy过程中的动手笔记,前期的参考书是<Python数据分析基础教程 NumPy学习指南>第二版.<数学分 ...

  6. NumPy学习笔记 二

    NumPy学习笔记 二 <NumPy学习笔记>系列将记录学习NumPy过程中的动手笔记,前期的参考书是<Python数据分析基础教程 NumPy学习指南>第二版.<数学分 ...

  7. numpy学习笔记:np.zeros应用——生成三通道全黑Mask(蒙版)

    numpy学习笔记:np.zeros应用--生成三通道全黑Mask(蒙板) np.zeros官方文档:np.zeros官方文档 下面是一段生成256*256三通道全黑mask的demo import ...

  8. tensorflow学习笔记一:安装调试

    denny的学习专栏 徐其华 博客园 首页 新随笔 联系 管理 订阅 随笔- 129  文章- 0  评论- 791  tensorflow学习笔记一:安装调试 用过一段时间的caffe后,对caff ...

  9. STM32F103CUBE学习笔记 一 环境安装

    STM32F103CUBE学习笔记一 stm32cubemx安装 jre安装 stm32cubemx安装 stm32cubemx创建工程 准备工作 配置时钟 KEIL PACK安装 keil安装 st ...

最新文章

  1. 改变人生的32句励志名言
  2. 嵌入式环境:挂载开发板根NFS文件系统失败
  3. javascript初级代码块
  4. python怎么一直循环_python 基础之while无限循环
  5. PowerBI功能发布时间线
  6. css3直线运动_纯css3实现曲线运动——贝塞尔曲线(cubic-bezier)
  7. selenium 示例_Selenium findElement和findElements示例
  8. 2021年ARINC818数字视频传输重磅新品–Helios
  9. 计算机环境变量怎么恢复默认,环境变量怎么还原
  10. 十进制和二进制如何换算?
  11. U盘文件丢失选择什么数据恢复软件好
  12. PhotoShop批量生成App大小不同的Icon
  13. python随机生成验证码,数字+大小写字母
  14. Kubernetes基础:包含多个容器的Pod
  15. 5 极限存在准则及两个重要极限
  16. 南信大计算机科学与坫,校园万象 | 南信大开启无处不在“i-NUIST”模式,疑难问题,为你一一解答!...
  17. 我有八千元,买苹果手机还是安卓呢?
  18. 易语言支持库制作学习笔记
  19. 中基鸿业投资理财这五点要学会
  20. 基于物联网技术的智能实验室系统设计与实现

热门文章

  1. Android手机4G网络设置ipv6
  2. 工信部对多家涉及网络数据和用户个人信息安全突出情况的企业开展问询调查...
  3. 视频、音频文件格式大全
  4. 计算机的数学要求(?转)
  5. 任何的Linux开发板+ADB+fastboot驱动-----真实有效!
  6. windows下安装kafka总结
  7. 【Python CUDA版】河北工业大学计算机图像处理实验二:图像直方图及灰度变换
  8. jitsi-meet开源视频会议详细讲解用法
  9. Matlab—什么是nc文件,以及如何读取导入
  10. 文章详情 html代码,文章详情页.html