一、创建ndarrary

1、使用np.arrary()创建

1)、一维数组

import numpy as np
np.array([1, 2, 3, 4])

2)、二维数组

np.array([[1, 2, 3], [3, 8,0], [3, 2, 5]])

注意:

a、创建数组的时候,数据类型最好一致,若不一致 str->float->int

b、数组要等长

不等长的数组

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

结果

array([list([1, 1, 2]), list([3, 5, 1]), list([2, 0])], dtype=object)

3)、图片

import matplotlib.pyplot as plt

读取图片  图片->数组(三维)

img_arr = plt.imread("a.jpg")

展现图片  数组->图片

plt.imshow(img_arr)

4)、获取数组的形状

img_arr.shape

2、使用routeines创建

1)、ones

np.ones(shape=(3, 6))

3行6列,内容为1.的二维数组  dtype定义数据的类型

2)、zeros

np.zeros(shape=(2,5))

2行5列值为0.的二维数组

3)、full

自定义数据

np.full(shape=(3, 5), fill_value=10)

3行5列值为10的二维数组

4)、linspace

等差数组

np.linspace(start=0, stop=100, num=10)

5)、arange

与range有点相似step步长

np.arange(10,100,5)

6)、random.randint

np.random.randint(10, 30, size=(3,5))

7)、random.randn

正态分布

np.random.randn(2, 3)

2行3列随机数组

8)、random.random

0~1

np.random.random(size=(2,4))

注意:关于random

np.random.seed(10)

固定时间种子,产生的随机数就会固定下来

二、ndarray属性

1、size

数组元素的个数

arr.size

2、shape

数组的形状(维度+长度)

arr.shape

3、ndim

获取当前数组的维度

arr.ndim

4、dtype

获取当前数组数据的类型

arr.dtype

5、type

获取数组的类型

type(arr)

三、ndarray的基本操作

1、索引

arr = np.random.randint(1, 100, size=(4, 5))
# 获取索引值
arr[1][2]
# 修改索引值
arr[1][2] = 30
arr

2、切片

列表的切片相似

行切片

arr[0:2]

列切片

arr[:,1:3]

注意:用逗号隔开

行列切片

arr[1:3, 2:4]

行倒序

arr[::-1]

列倒序

arr[:,::-1]

全倒序

arr[::-1,::-1]

图片全倒置

new_arr = arr[::-1, ::-1, ::-1]
plt.imshow(new_arr)

3、变形

注意:reshape(元祖或直接写数字),新的shape和原来的shape的size必须一样

变成一维数组

arr.reshape((20,))

变形二维数组

arr.reshape((2, 10))

变形三维数组

arr.reshape(2, 5, 2)

图片倒置

arr2 = plt.imread("a.jpg")
# 变形成一维数组
new_arr2 = arr2.reshape((313*500*3, ))
# 倒置
new_arr2
new_ = new_arr2[::-1]
# 变形
new_
plt.imshow(new_.reshape(313, 500, 3))

补充

-1表示自动计算数值

4、级联

前提:维度(ndim)必须一样,行或列有一个相等

np.concatenate((arr, arr), axis=1)

axis=1时,行级联(合并)

axis=0时,列级联(合并)

待续....

numpy初识 old的更多相关文章

  1. numpy初识

    1,机器学习numpy 初识 1)numpy初识 import numpy num1= numpy.array([1,2,3]) dtype('num1') #查找类型 num1.dtype num1 ...

  2. numpy 初识(二)

    针对 numpy.array(序列)的实例介绍 ndim 数组(矩阵)的维度 size 所有元素的和 数学运算(+, -) 元素个数一样,对应位置相减 加,减,乘,平方一个数,执行广播形式:即都减去一 ...

  3. numpy 初识(一)

    基本操作: 读取文件(与pandas读取csv相似): import numpy numpy.genfromtxt("word.txt", delimiter=',', dtype ...

  4. Python学习之路:NumPy初识

    import numpy as np; //一维NumPy数组 myArray = np.array([1,2,3,4]); print(myArray); [1 2 3 4] //打印一维数组的形状 ...

  5. numpy 初识(三)

    基本运算 exp: e sqrt:开放 floor:向下取整 ravel:矩阵拉成一个向 T:转置(行和列变换) 改变形状: resize: 更改其形状(返回值为None)a.resize(6,2) ...

  6. 初识NumPy库-基本操作

    ndarray(N-dimensional array)对象是整个numpy库的基础. 它有以下特点: 同质:数组元素的类型和大小相同 定量:数组元素数量是确定的 一.创建简单的数组: np.arra ...

  7. 初识numpy

    from numpy import *   导入numpy包 random可以生成随机数组 通过mat函数,将数组转换成矩阵,可以对矩阵进行求逆计算等.其中.I操作实现了矩阵求逆计算操作. 执行矩阵乘 ...

  8. jupter nootbok 快捷键、NumPy模块、Pandas模块初识

    jupter nootbok 快捷键 插入cell:a b 删除cell:x cell模式的切换:m:Markdown模式 y:code模式 运行cell:shift+enter tab:补全 shi ...

  9. 初识numpy的多维数组对象ndarray

    PS:内容来源于<利用Python进行数据分析> 一.创建ndarray 1.array :将一个序列(嵌套序列)转换为一个数组(多维数组) In[2]: import numpy as ...

随机推荐

  1. Yet Another Number Sequence——[矩阵快速幂]

    Description Everyone knows what the Fibonacci sequence is. This sequence can be defined by the recur ...

  2. MySQL视图 definer & invoker 权限

    1.创建视图 CREATE VIEW `NewView`AS SELECT `user`.USER_ID, `user`.USER_NAME, department.DEPT_ID, departme ...

  3. WPF 使用 SharpDx 异步渲染

    本文告诉大家如何通过 SharpDx 进行异步渲染,但是因为在 WPF 是需要使用 D3DImage 画出来,所以渲染只是画出图片,最后的显示还是需要 WPF 在他自己的主线程渲染 本文是一个系列,希 ...

  4. Linux 内核 struct device 设备

    在最低层, Linux 系统中的每个设备由一个 struct device 代表: struct device { struct device *parent; struct kobject kobj ...

  5. dotnet 通过 WMI 获取系统补丁

    本文告诉大家如何通过 WMI 获取补丁 通过 Win32_QuickFixEngineering 可以获取系统启动的服务 下面代码只是获取补丁的 kb 字符 const string query = ...

  6. Centos中Qt编译问题(/usr/bin/ld: 找不到 -lpulse-mainloop-glib,/usr/bin/ld: 找不到 -lpulse...)

    Linux下QT编写一个与视频播放的程序,出现/usr/bin/ld: 找不到 -lpulse-mainloop-glib,/usr/bin/ld: 找不到 -lpulse 解决办法: 首先find ...

  7. 22.文本框验证和外部url的调用

    面板可以右键固定到浏览器并且横向纵向都剧中 如果要在图片上进行点击或者其他操作 可以覆盖一个图片热区或者矩形(透明的)充当一个按钮的操作 这个提示的图片是默认隐藏的 通过右上角那个隐藏的勾 文本框右边 ...

  8. Pycharm学生版安装教程(2019-12月更新)

    以下方法全部是官方渠道正版激活,可选择学生版(免费) 或企业版(付费) 我的机器学习教程「美团」算法工程师带你入门机器学习  以及 「三分钟系列」数据结构与算法  已经开始更新了,欢迎大家订阅~这篇专 ...

  9. SpringBoor与SpringCloud的关系

    SpringBoot是一个快速开发的框架,能够快速的整合第三方框架.简化XML配置,全部采用注解形式,内置Web服务器(如Tomcat等),帮助开发者能够实现快速开发,SpringBoot Web控制 ...

  10. Python第二天了哇

    在Python中input是接收用户输入的一个函数哇 a = int( b) 这个的意思是把b的值转换为整型? 好像是这个亚子 Python想要知道它的内置函数的话可以在Python的交互界面(She ...