活动地址:CSDN21天学习挑战赛

学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。

学习日记

目录

学习日记

一、numpy概述

1、numpy简介

2、numpy安装

二、 Ndarray 对象

1、概述

2、ndarray特点

3、内部结构

三、数据类型对象 (dtype)

四、NumPy 创建数组

五、数组属性

1、ndarray.shape

2、ndarray.ndim(返回数组的维数)

3、numpy.itemsize(返回数组中每个元素的字节单位长度)

4、numpy.arange(返回ndarray对象,包含给定范围内的等间隔值)

5、numpy.linspace

​六、创建数组

1、通过列表创建一维数组

2、通过列表创建二维数组

3、创建全为0的二维数组

4、创建全为1的三维数组

5、full函数创建任意大小的数组并填充任意数字

6、创建一维等差数组

7、创建二维等差数组

8、创建单位矩阵(二维数组)

9、创建二维随机数组

10、创建二维随机整数数组(数值小于 6)

七、数组运算

1、和

2、mean

3、argsort

4、矩阵乘法

5、矩阵求逆


一、numpy概述

1、numpy简介

NumPy是一个功能强大的Python库,主要用于对多维数组执行计算。NumPy提供了大量的库函数和操作,可以帮助程序员轻松地进行数值计算。这类数值计算广泛用于机器学习模型、图像处理、数学任务等方面。

2、numpy安装

pip install numpy

二、 Ndarray 对象

1、概述

NumPy 中定义的最重要的对象是称为 ndarray 的 N 维数组类型。  它是一系列同类型数据的集合,以 0 下标为开始进行集合中元素的索引。

        ndarray中的每个元素在内存中使用相同大小的块。 ndarray中的每个元素是数据类型对象的对象(称为 dtype)。从ndarray对象提取的任何元素(通过切片)由一个数组标量类型的 Python 对象表示。 下图显示了ndarray,数据类型对象(dtype)和数组标量类型之间的关系。

2、ndarray特点

ndarray 对象是用于存放同类型元素的多维数组。

ndarray 中的每个元素在内存中都有相同存储大小的区域。

3、内部结构

#基本的Ndarray 是使用 NumPy 中的数组函数创建的。
numpy.array 

创建一个 ndarray 只需调用 NumPy 的 array 函数即可

numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)

三、数据类型对象 (dtype)

dtype可由语法构造

numpy.dtype(object, align, copy)
  • Object:被转换为数据类型的对象。

  • Align:如果为true,则向字段添加间隔,使其类似 C 的结构体。

  • Copy ? 生成dtype对象的新副本,如果为flase,结果是内建数据类型对象的引用。

    
    # 使用数组标量类型
    import numpy as np
    dt = np.dtype(np.int32)
    print dt

    结果

    int32

四、NumPy 创建数组

numpy.empty 方法用来创建一个指定形状(shape)、数据类型(dtype)且未初始化的数组

numpy.empty(shape, dtype = float, order = 'C')

numpy.zeros 创建指定大小的数组,数组元素以 0 来填充

numpy.zeros(shape, dtype = float, order = 'C')

numpy.ones 创建指定形状的数组,数组元素以 1 来填充

numpy.ones(shape, dtype = None, order = 'C')

五、数组属性

1、ndarray.shape

import numpy as np
a = np.array([[1,2,3],[4,5,6]])
print a.shape

结果

(2, 3)
 # 调整数组大小
import numpy as np a = np.array([[1,2,3],[4,5,6]]) a.shape =  (3,2)
print a 

结果

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

2、ndarray.ndim(返回数组的维数

 # 等间隔数字的数组
import numpy as np
a = np.arange(24)  print a

结果

[0 1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16 17 18 19 20 21 22 23] 
 # 一维数组
import numpy as np
a = np.arange(24) a.ndim
# 现在调整其大小
b = a.reshape(2,4,3)
print b
# b 现在拥有三个维度

结果

[[[ 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、numpy.itemsize(返回数组中每个元素的字节单位长度

 # 数组的 dtype 为 int8(一个字节)
import numpy as np
x = np.array([1,2,3,4,5], dtype = np.int8)
print x.itemsize

结果

1

4、numpy.arange(返回ndarray对象,包含给定范围内的等间隔值)

 numpy.arange(start, stop, step, dtype)

 import numpy as np
x = np.arange(5)
print x

结果

[0  1  2  3  4]
 import numpy as np
# 设置 dtype
x = np.arange(5, dtype =  float)
print x

结果

[0.  1.  2.  3.  4.]
 # 设置了起始值和终止值参数
import numpy as np
x = np.arange(10,20,2)
print x

结果

[10  12  14  16  18]

5、numpy.linspace

指定了范围之间的均匀间隔数量,而不是步长

 numpy.linspace(start, stop, num, endpoint, retstep, dtype)

​六、创建数组

1、通过列表创建一维数组

np.array([1, 2, 3])

array([1, 2, 3])

2、通过列表创建二维数组

np.array([(1, 2, 3), (4, 5, 6)])

array([[1, 2, 3], [4, 5, 6]])

3、创建全为0的二维数组

np.zeros((3, 4))

array([[0., 0., 0., 0.],
[0., 0., 0., 0.],
[0., 0., 0., 0.]])

4、创建全为1的三维数组

np.ones((2, 3, 4))

array([[[1., 1., 1., 1.],
[1., 1., 1., 1.],
[1., 1., 1., 1.]],
[[1., 1., 1., 1.],
[1., 1., 1., 1.],
[1., 1., 1., 1.]]])

5、full函数创建任意大小的数组并填充任意数字

np.full((3, 4), 2)

array([[2, 2, 2, 2],
   [2, 2, 2, 2],
   [2, 2, 2, 2]])

6、创建一维等差数组

np.arange(5)

array([0, 1, 2, 3, 4])

7、创建二维等差数组

np.arange(6).reshape(2, 3)

array([[0, 1, 2],
   [3, 4, 5]])

8、创建单位矩阵(二维数组)

np.eye(3)

array([[1., 0., 0.],
   [0., 1., 0.],
   [0., 0., 1.]])

9、创建二维随机数组

np.random.rand(2, 3)

10、创建二维随机整数数组(数值小于 6)

np.random.randint(6, size = (2, 3))

七、数组运算

a = np.array([10, 20, 30, 40, 50])
b = np.arange(1, 6)

1、和

a = np.array([[1, 2],[3, 4]])
np.sum(a)np.sum(a, axis=0) # axis=0 表示对每一列求和np.sum(a, axis=1) # axis=0 表示对每一行求和

2、mean

np.mean(a) # 求取平均值

3、argsort

a = np.array([[3, 6, 4, 11],[5, 10, 1, 3]])
a.argsort() # 将元素按照行从小到大排序,返回对应位置元素的下标

结果

array([[0, 2, 1, 3],[2, 3, 0, 1]], dtype=int64)

4、矩阵乘法

np.mat(A) * np.mat(B)

5、矩阵求逆

np.linalg.inv(A)

Python之numpy函数相关推荐

  1. Python使用numpy函数vsplit垂直(行角度)拆分numpy数组(返回拆分后的numpy数组列表)实战:垂直拆分二维numpy数组、split函数垂直拆分二维numpy数组

    Python使用numpy函数vsplit垂直(行角度)拆分numpy数组(返回拆分后的numpy数组列表)实战:垂直拆分二维numpy数组.split函数垂直拆分二维numpy数组 目录

  2. Python使用numpy函数hsplit水平(按列)拆分numpy数组(返回拆分后的numpy数组列表)实战:水平(按列)拆分二维numpy数组、split函数水平(按列)拆分二维numpy数组

    Python使用numpy函数hsplit水平(按列)拆分numpy数组(返回拆分后的numpy数组列表)实战:水平(按列)拆分二维numpy数组.split函数水平(按列)拆分二维numpy数组 目 ...

  3. python中numpy函数ftt_语音MFCC提取:librosa python_speech_feature(2019.12)

    最近在阅读语音方向的论文,其中有个被提及很多的语音信号特征MFCC(Mel-Frequency Cepstral Coefficients),找到了基于python的语音库librosa(versio ...

  4. 详解 python 中 numpy 函数 —— zeros()

    1. 概述 Python中的 numpy 主要用于处理数值:下面详细讲解 numpy 中用于创建 0 数组的 zeros() 函数. 2. zeros() 2.1 语法 numpy.zeros(sha ...

  5. python中numpy函数fft_如何在PyTorch中正确使用Numpy的FFT函数?

    我最近被介绍给Pythorch,开始浏览图书馆的文档和教程. 在"使用numpy和scipy创建扩展"教程中( http://pytorch.org/tutorials/advan ...

  6. [转载] python导入numpy函数库

    参考链接: Python中的NumPy 1(简介) 1.安装pip  去网站  https://raw.github.com/pypa/pip/master/contrib/get-pip.py  进 ...

  7. python的numpy函数求平方和_如何使用Python和Numpy计算r平方?

    从 numpy.polyfit文档,它是适合的线性回归.具体来说,具有度'd'的numpy.polyfit拟合具有平均函数的线性回归 E(y | x)= p_d * x ** d p_ {d-1} * ...

  8. Python数据攻略-Python使用Numpy函数方法

    大家好,我是Mr数据杨.想象一下,ndarray就像是三国演义里的每个角色,是故事的核心.他们的创建就如同英雄的诞生,可能是天生神力,也可能是后天培养,就如通过各种方式创建ndarray.每个角色都有 ...

  9. Python使用numpy包编写自定义函数计算平均绝对误差(MAE、Mean Absolute Error)、评估回归模型和时间序列模型、解读MAE

    Python使用numpy包编写自定义函数计算平均绝对误差(MAE.Mean Absolute Error).评估回归模型和时间序列模型.解读MAE 目录

最新文章

  1. linux虚拟机启动网卡命令,命令行下无法联网怎么办,vmware下安装archlinux实现网络连接,实机grub引导启动linux...
  2. linux libpath的作用,linux – LD_LIBRARY_PATH似乎不起作用
  3. 云炬Android开发报错处理教程 完美解决Android Studio maven { url ‘https://jitpack.io‘ } 无法下载问题
  4. Django项目:CRM(客户关系管理系统)--12--05PerfectCRM实现King_admin注册功能获取内存01...
  5. Scylla——开源免费的优秀代理 IP 池:自动验证、JSON API、基于 React 的 Web UI、Docker 支持...
  6. 理解_RBAC基础概念_Spring Security OAuth2.0认证授权---springcloud工作笔记113
  7. jquery模板插件jTemplates代替拼html
  8. Python Tricks(五)—— 计算 list of lists 的长度(元素个数)
  9. Linux下安装流量监控工具iftop
  10. redis 安装填坑记录
  11. 【zookeeper 获取节点数据getData源码解析】
  12. 7-Zip下载|7-Zip下载
  13. Unity 角色慢动作
  14. 霍尔开关的分类及如何选型
  15. 打开ftp文件服务器,打开ftp服务器文件管理
  16. matlab四元一次非线性方程求解,[转载]MATLAB求解非线性方程(转)
  17. Android电源管理分析
  18. 【SemiDrive源码分析】【MailBox核间通信】42 - 基于Mailbox 实现的 mailbox_demo 应用程序(RTOS Android侧通信实现)
  19. TensorFlow滑动平均模型作用
  20. 正则表达式验证身份证号码

热门文章

  1. 内部服务器错误500是什么?该如何解决?
  2. mysql排他锁实例_mysql共享锁与排他锁用法实例分析
  3. ATBroker正确玩法
  4. 【区块链 | ENS】以太坊(Ethereum)中的ENS已支持DNS,怎么使用DNS解析地址?
  5. 【区块链 | ENS】ENS中的Namehash加密逻辑
  6. 云计算 3.0 的发展面临哪三大挑战?
  7. 霍尔效应实验背景及实验目的
  8. 如何在 txt 中制作表格(转帖)
  9. vue10-class数组样式绑定
  10. 如何让设计作品更具亮点 哪些因素值得参考