Numpy简单入门

Numpy是高性能科学计算好数据分析的基础包,提供了矩阵运算的功能,在深度学习和数据分析领域广泛应用。。

创建array数组

vector = np.asarray([1,2,3,4]);

创建zero数组

a = np.zeros(10)
 a1 = np.zeros(shape=(5,3))

创建one矩阵

one = np.ones((3,4));

创建自定义值的矩阵

user_define = np.full((3, 5), 110)

创建递增的矩阵

np.arange(0,20,2)

使用linspace创建等分的矩阵

np.linspace(0, 10, 5)

用随机数来创建矩阵

np.random.randint(0,10,size = 10)
np.random.randint(4,9,size = (5,3))

用正太分布来创建矩阵

np.random.normal(loc = 1.0, scale = 1.0, size = (3,2))

数组维度

ndim 表示数组维度(或轴)的个数。

arr_1_d = np.asarray([1])
arr_2_d = np.asarray([[1, 2], [3, 4]])
print(arr_1_d.ndim)
print(arr_2_d.ndim)

shape 表示数组的维度或形状, 是一个整数的元组类型,元组的长度等于 ndim。

print(arr_1_d.shape)
print(arr_2_d.shape)

shpe这个属性用途很广,借助于reshape()函数我们甚至还可以对数组形状进行改变,但需要保证变换后和变换前矩阵元素数量一致

arr_2_d.reshape((4,1))

此外reshape还有一个order参数,指的是以什么样的顺序读取元素,其中有这样几个参数

  • ‘C’:默认参数,使用类似 C-like 语言(行优先)中的索引方式进行读写。
  • ‘F’:使用类似 Fortran-like 语言(列优先)中的索引方式进行读写。
  • ‘A’:原数组如果是按照’C’的方式存储数组,则用’C’的索引对数组进行 reshape,否则使用’F’的索引方式。
np.arange(6).reshape(2,3)

np.arange(6).reshape(2,3,order = 'F')

size

size,也就是数组元素的总数,它就等于 shape 属性中元素的乘积。

arr_2_d.size

矩阵类型

dtype,它是一个描述数组中元素类型的对象。

使用 dtype 属性可以查看数组所属的数据类型。NumPy 中大部分常见的数据类型都是支持的,例如 int8、int16、int32、float32、float64 等。dtype 是一个常见的属性,在创建数组,数据类型转换时都可以看到它。

arr_2_d.dtype

通过 astype()方法,我们可以将老矩阵按照指定类型输出一个新矩阵。

vector = np.arange(1,3)
print(vector.dtype)
vector = vector.astype(float)

矩阵之间的点乘

矩阵乘法要求第一个矩阵的列数要等于第二矩阵的行数,具体点乘的函数为dot()

a = np.arange(1, 6).reshape(2,3)
b = np.arange(1,7).reshape(3,2)
print(a.shape[1] == b.shape[0])
print(a.dot(b))

矩阵的转置

把原来矩阵的行变成列,列变成行

a = np.arange(1,7),reshape(2,3)
print(a.T)

[[1 4]
 [2 5]
 [3 6]]

矩阵的逆

如果要求矩阵的逆,首先需要导入numpy.linalg,然后通过linalg的inv函数来求逆,矩阵求逆的条件是矩阵的行数和列数必须相同。

import numpy.linalg as lg
a = np.array([[0,1],[2,3]])
invA = lg.inv(a)

print(A.dot(invA))

array([[-1.5,  0.5],
       [ 1. ,  0. ]])

argmax(a, axis = None, out = None)函数主要用来求一个array中最大值的下标,就是最大数所对应的索引位置是多少。

index = np.argmax([1,2,9,3,2])

axis代表按照哪个轴来找最大的索引值

从tx实习回来之后忙于秋招、毕设好久没有认认真真的写博客了,今天这一篇就立个flag吧,以后每周都要写一篇博客,保持原有写博客的习惯。

Original: https://blog.csdn.net/Startapi/article/details/122277388
Author: vcjmhg
Title: Numpy简单入门

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/760517/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • yolov5 anchors 中 K-means聚类

    anchors 运行trains.py没有生成anchor原因 程序 kmeans改动(距离、k-means++) 运行trains.py没有生成anchor原因 yolov5运行…

    Python 2023年8月2日
    065
  • 漫谈计算机网络:网络层 —— 重点:IP协议与互联网路由选择协议

    面试答不上?计网很枯燥? 听说你学习 计网 每次记了都会忘? 不妨抽时间和我一起多学学它👇 深入浅出,用你的空闲时间来探索计算机网络的硬核知识! 👇博主的上篇连载博客《初识图像处理…

    Python 2023年10月13日
    047
  • Python Pandas DataFrame 读取 CSV 文件 read_csv 参数详解

    一、read_csv 基本参数。二、通用解析参数。三、读取网络数据 一、read_csv 基本参数。 path 文件路径。 sep 或者…

    Python 2023年8月1日
    043
  • 电脑微信中快捷键的秘密——聊聊那些你知道的和不知道的微信快捷键

    微信是我们在熟悉不过的沟通工具了。往往出于各种原因的需要,我们需要在电脑端使用微信收发消息。怎样提高微信的使用效率,就至关重要了。本文正是出于此目的,笔者写给视障小伙伴的微信经验谈…

    Python 2023年6月10日
    0111
  • [flask-restful]利用reqparse解析嵌套字典结构

    文章目录 Flask-Restful解析请求中嵌套字典结构 * reqparse使用简介 实现思路 – 1. 嵌套解析类实现 2. 封装传入的字典 3. 错误处理 封装…

    Python 2023年8月11日
    037
  • Android实现雪花特效自定义view

    一、前言 这个冬天,老家一直没有下雨, 正好圣诞节,就想着制作一个下雪的特效。圣诞祝福:平安夜,舞翩阡。雪花飘,飞满天。心与心,永相伴。圣诞节是传统的宗教节日,对于基 督徒,那是庆…

    Python 2023年11月9日
    026
  • 驱动程序开发:LCD屏显示驱动

    1、简介 在 Linux 中应用程序最终也是通过操作 RGB LCD 的显存来实现在 LCD 上显示字符、图片等信息。在裸机中我们可以随意的分配显存,但是在 Linux 系统中内存…

    Python 2023年11月7日
    050
  • [深度学习项目] – 时间序列预测 (2)

    文章目录 abstract 可视化 读入数据 * 简单时序图 季节性时序图 季节性箱线图 趋势箱线图 时序的主要成分 statsmodels 安装 周期检验 STL算法介绍 Hom…

    Python 2023年8月7日
    055
  • 基于Anaconda配置Python开发环境详解(2)conda基本命令

    本系列帖子将从纯小白的视角讲解新手使用Anaconda配置Python开发环境全流程,使用Pycharm编辑器、conda包管理器。 尽管在之后的帖子pycharm等IDE会自动调…

    Python 2023年9月9日
    052
  • python格式化字符串

    目录 格式化字符串是什么? 1.使用占位符格式化字符串: 占位符: 例子: 占位符%s、%c、%%的使用: 占位符%d、%o、%x的使用: 占位符 %f、%e的使用: 2.使用fo…

    Python 2023年8月2日
    041
  • Django 优化杂谈

    总结下最近看过的一些文章,然后想到的一些优化点,整理一下. Django 默认DB配置提供了选项 CONN_MAX_AGE用于配置在同一个thread/greenlet里面DB c…

    Python 2023年6月3日
    069
  • OpenAi[ChatGPT] 使用Python对接OpenAi APi 实现智能QQ机器人-学习详解篇

    文章大部分来自:https://lucent.blog原文博客地址:https://blog.ideaopen.cn 最近火热全文的 ChatGPT,被很多人玩出了花,我们在 Gi…

    Python 2023年8月15日
    062
  • Linux–多线程(二)

    基本概念 概述:现在操作系统基本都是多任务的操作系统,同时有大量可以调度的实体在运行。在多任务操作系统当中,同时运行的多个任务可能: 都需要访问/使用同一种资源 多个任务之间有依赖…

    Python 2023年10月17日
    046
  • 【Python】秀人集-写真集-爬虫-2.0

    好久不见呀,各位。[/坏笑] 自从上次发布文章已经过去了许久,之前承诺过的2.0版本我就现在嘛出来吧。(毕竟,评论区都已经开始催了,拖不了了…) emm…具…

    Python 2023年11月1日
    045
  • MTCTF Writeup By Light1ng

    MTCTF Writeup By Light1ng Web easypickle 下载附件,是一个flask框架,然后很明显的存在pickle反序列化,首先我们需要伪造sessio…

    Python 2023年8月13日
    045
  • 基于PyTorch的YOLOv5介绍

    在PyTorch中使用YOLOv5YOLO是 “You only look once “的首字母缩写,是一个开源软件工具,它具有实时检测特定图像中物体的高效…

    Python 2023年10月24日
    047
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球