博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第十章、numpy模块
阅读量:5291 次
发布时间:2019-06-14

本文共 2215 字,大约阅读时间需要 7 分钟。

目录

第十章、numpy模块

一、导入方式

import numpy as np#约定俗成

二、作用

数组或矩阵的运算

  1. numpy数组

    arr1 = np.array([1,2,3])    #创建一维数组对象arr1
    arr2 = np.array([[1,2,3],[4,5,6]])arr2                       #二维数组

    三维数组不用numpy模块,用TensorFlow、pytorch模块

  2. 属性

    属性 解释
    T 数组的转置(也就是行和列互换)
    dtype 数组元素的数据类型
    size 数组元素的个数(比如2行3列为6)
    ndim 数组的维数
    shape 数组的维度大小(以元组形式)(比如2行3列为(2,3))
    astype 类型转换
    arr = np.array([[1, 2, 3], [4, 5, 6]])print(arr.T)  # 行与列互换   arr1.transpose()也是转置-------------------------------------------------------[[1 4] [2 5] [3 6]]

    ```

    切片

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

    print(arr[:]) #取出数组所有元素
    print(arr[:, :]) #取出数组所有元素

print(arr[0, :]) #取出第0行到第一行的数组

print(arr[0:1, :]) #取出第0行到第一行的数组,顾头不顾尾
print(arr[0:1, 0:1]) #取出第0行到第一行,第0列到第一列的数组,顾头不顾尾
print(arr[0, 0],type(arr[0, 0])) #取出第0行到第一行,第0列到第一列的数,输出数组类型
print(arr[0, [0,2]]) #取出第0行第0个元素和第2个元素 [1 3]
print(arr[0, 0] + 1) #取出第0行第0列的元素加1 2
```

#取值arr = np.array([[1, 2, 3], [4, 5, 6]])arr[0, :] = 0    #将第0行的元素全部变为0print(arr)--------------------------------------------[[0 0 0] [4 5 6]]arr[1, 1] = 1  #将第一行第一列的数字改为1arr[arr < 3] = 3  # 布尔取值   将小于3的数字全部变为3print(arr)
#合并arr1 = np.array([[1, 2, 3], [4, 5, 6]])  # 可变数据类型arr2 = np.array([[7, 8, 9], [10, 11, 12]])  # 可变数据类型-------------------------------------------------------[[1 2 3] [4 5 6]][[ 7  8  9] [10 11 12]]

三、通过函数创建numpy数组

方法 详解
array() 将列表转换为数组,可选择显式指定dtype
arange() range的numpy版,支持浮点数
linspace() 类似arange(),第三个参数为数组长度
zeros() 根据指定形状和dtype创建全0数组
ones() 根据指定形状和dtype创建全1数组
eye() 创建单位矩阵
empty() 创建一个元素全随机的数组
reshape() 重塑形状

四、 numpy数组运算

方法 详解
array() 将列表转换为数组,可选择显式指定dtype
arange() range的numpy版,支持浮点数
linspace() 类似arange(),第三个参数为数组长度
zeros() 根据指定形状和dtype创建全0数组
ones() 根据指定形状和dtype创建全1数组
eye() 创建单位矩阵
empty() 创建一个元素全随机的数组
reshape() 重塑形状

五、重点

随机数种子:所有的随机数是按照随机数种子生成的

时间短则不变,时间长就变

np.random.seed(int(time.time()))np.random.seed(1) #如果固定了就不会变arr1 = np.random.rand(3,4) # 可变数据类型print(arr1)
rs = np.random.RandomState(1) #产生一个随机状态种子,seed为1print(rs.rand(3,4))---------------------------------------------------------[[4.17022005e-01 7.20324493e-01 1.14374817e-04 3.02332573e-01][1.46755891e-01 9.23385948e-02 1.86260211e-01 3.45560727e-01][3.96767474e-01 5.38816734e-01 4.19194514e-01 6.85219500e-01]]

转载于:https://www.cnblogs.com/demiao/p/11385746.html

你可能感兴趣的文章
SQL SERVER 2005中如何获取日期(一个月的最后一日、一年的第一日等等)
查看>>
django 学习笔记(转)
查看>>
控制台程序秒变Windows服务(Topshelf)
查看>>
字节流与字符流的区别详解
查看>>
20141026--娱乐-箱子
查看>>
自定义分页
查看>>
Oracle事务
查看>>
任意输入10个int类型数据,把这10个数据首先按照排序输出,挑出这些数据里面的素数...
查看>>
String类中的equals方法总结(转载)
查看>>
图片问题
查看>>
bash使用规则
查看>>
AVL数
查看>>
第二章练习
查看>>
ajax2.0
查看>>
C#时间截
查看>>
C语言程序设计II—第九周教学
查看>>
C# 获取系统时间及时间格式转换
查看>>
WCF、WebAPI、WCFREST、WebService之间的区别
查看>>
2018-2019-2-20175332-实验四《Android程序设计》实验报告
查看>>
全栈12期的崛起之捡点儿有用的说说
查看>>