import numpy as np

# Numpy数组操作
print('========访问列表元素, 切片,赋值===========')
arr = np.array([2., 6., 5., 5.])
print(arr[:3])
print(arr[3])
arr[0] = 5.
print(arr)
print('========数组唯一性元素===========')
print(np.unique(arr))
print('========数组排序,排序索引===========')
print(np.sort(arr))
print(np.argsort(arr))
print('========将数组乱序重排===========')
np.random.shuffle(arr)
print(arr)
print('========数组相等性比较===========')
print(np.array_equal(arr, np.array([1., 3., 2.])))
print('========二维数组(矩阵)的元素访问===========')
matrix = np.array([[4., 5., 6.], [2, 3, 6]], float)
print(matrix)
print(matrix[0, 0])
print(matrix[0, 2])
print('========对数组的各维进行切片操作===========')
print(matrix[1:2,2:3])
print(matrix[1, :])
print(matrix[:, 2])
print(matrix[-1:, -2:])
print('========将多维数组拉平为一维数组===========')
print(matrix.flatten())
print('========获取数组大小信息===========')
print(matrix.shape)
print('========获取数组元素的类型===========')
print(matrix.dtype)
print('========数组的数据类型转换===========')
int_arr = matrix.astype(np.int32)
print(int_arr)
print(int_arr.dtype)
print('========获取数组第一维的长度===========')
print(len(matrix))
print('========判断数组是否包含元素===========')
print(2 in matrix)
print(0 in matrix)
print('========调整数组维度===========')
arr = np.array(range(8), float)
print(arr)
re_arr = arr.reshape((4, 2))
print(re_arr)
print('========矩阵的转置运算===========')
print(re_arr.transpose())
print('========使用数组的T属性实现转置===========')
matrix = np.arange(15).reshape(3, 5)
print(matrix)
print(matrix.T)
print('========使用newaxis调整元素位置,增加维度===========')
arr = np.array([14, 32, 13], float)
print(arr)
print(arr[:, np.newaxis])
print(arr[:, np.newaxis].shape)
print(arr[np.newaxis, :])
print(arr[np.newaxis, :].shape)
print('========数组的连接===========')
arr1 = np.array([10, 22], float)
arr2 = np.array([31, 43, 54, 61], float)
arr3 = np.array([71, 82, 29], float)
print(np.concatenate((arr1, arr2, arr3)))
print('========数组连接时,指定具体的条轴===========')
arr1 = np.array([[11, 12], [32, 42]], float)
arr2 = np.array([[54, 26], [27, 28]], float)
print(np.concatenate((arr1, arr2)))
print(np.concatenate((arr1, arr2), axis=0))
print(np.concatenate((arr1, arr2), axis=1))
print('========二进制字符串和数组之间的转换,fromstring已升级为frombuffer===========')
arr = np.array([10, 20, 30], float)
str = arr.tostring()
print(str)
print(np.frombuffer(str))
PS C:\test> & C:/Python37/python.exe c:/test/ml.py
========访问列表元素, 切片,赋值===========
[. . .]
5.0
[. . . .]
========数组唯一性元素===========
[. .]
========数组排序,排序索引===========
[. . . .]
[   ]
========将数组乱序重排===========
[. . . .]
========数组相等性比较===========
False
========二维数组(矩阵)的元素访问===========
[[. . .]
 [. . .]]
4.0
6.0
========对数组的各维进行切片操作===========
[[.]]
[. . .]
[. .]
[[. .]]
========将多维数组拉平为一维数组===========
[. . . . . .]
========获取数组大小信息===========
(, )
========获取数组元素的类型===========
float64
========数组的数据类型转换===========
[[  ]
 [  ]]
int32
========获取数组第一维的长度===========

========判断数组是否包含元素===========
True
False
========调整数组维度===========
[. . . . . . . .]
[[. .]
 [. .]
 [. .]
 [. .]]
========矩阵的转置运算===========
[[. . . .]
 [. . . .]]
========使用数组的T属性实现转置===========
[[         ]
 [         ]
 [    ]]
[[    ]
 [    ]
 [    ]
 [    ]
 [    ]]
========使用newaxis调整元素位置,增加维度===========
[. . .]
[[.]
 [.]
 [.]]
(, )
[[. . .]]
(, )
========数组的连接===========
[. . . . . . . . .]
========数组连接时,指定具体的条轴===========
[[. .]
 [. .]
 [. .]
 [. .]]
[[. .]
 [. .]
 [. .]
 [. .]]
[[. . . .]
 [. . . .]]
========二进制字符串和数组之间的转换,fromstring已升级为frombuffer===========
b'\x00\x00\x00\x00\x00\x00$@\x00\x00\x00\x00\x00\x004@\x00\x00\x00\x00\x00\x00>@'
[. . .]

python---Numpy模块中数组运算的常用代码示例的更多相关文章

  1. python基础:os模块中关于文件/目录常用的函数使用方法

    Python是跨平台的语言,也即是说同样的源代码在不同的操作系统不需要修改就可以同样实现 因此Python的作者就倒腾了OS模块这么一个玩意儿出来,有了OS模块,我们不需要关心什么操作系统下使用什么模 ...

  2. python numpy模块

    目录 numpy模块 一维数组 二维数组(用的最多的) 获取多维数组的行和列 多维数组的索引 高级功能 多维数组的元素的替换 通过函数方法创建多维数组 矩阵的运算 点乘和转置(了解) 点乘必须 m*n ...

  3. Python3:numpy模块中的argsort()函数

    Python3:numpy模块中的argsort()函数   argsort函数是Numpy模块中的函数: >>> import numpy >>> help(nu ...

  4. os模块中关于文件/目录常用的函数使用方法

    os模块中关于文件/目录常用的函数使用方法 函数名 使用方法 getcwd() 返回当前工作目录 chdir(path) 改变工作目录 listdir(path='.') 列举指定目录中的文件名('. ...

  5. 18 os/os.path模块中关于文件/目录常用的函数使用方法 (转)

    os模块中关于文件/目录常用的函数使用方法 函数名 使用方法 getcwd() 返回当前工作目录 chdir(path) 改变工作目录 listdir(path='.') 列举指定目录中的文件名('. ...

  6. numpy库中数组的数据类型

    numpy库中数组的数据类型 dtype是一个特殊的对象,它含有ndarray将一块内存解释为特殊数据类型所需要的信息 指定数据类型创建数组 >>> import numpy as ...

  7. 修改python import模块中的变量

    可以直接通过 模块名.变量名=xx 的方式修改模块中的全局变量,测试代码如下 模块:test_model.py x = 111 def inc_x(): global x x = x + 1 测试脚本 ...

  8. (转)轻松掌握shell编程中数组的常见用法及示例

    缘起:在老男孩进行linux培训shell编程教学中,发现不少水平不错的网友及同学对数组仍然很迷糊,下面就给大家分享下数组的用法小例子,希望能给大家一点帮助.其实SHELL的数组很简单,好用.我们学习 ...

  9. Lambda表达式常用代码示例

    Lambda表达式常用代码示例 2017-10-24 目录 1 Lambda表达式是什么2 Lambda表达式语法3 函数式接口是什么  3.1 常用函数式接口4 Lambdas和Streams结合使 ...

随机推荐

  1. 删除链表之two star programming

    最近偶尔看到一篇关于Linus Torvalds的访问,大神说大部分人都不理解指针.假设被要求写一段链表删除节点的程序,大多数的做法都是跟踪两个指针,当前指针cur和其父节点pre,这种实现很容易理解 ...

  2. Comet OJ - Contest #2 D 枚举重心

    题面 思路: 函数f相当于是求一个点集f的直径,有一个性质是如果这个点集有多个直径一定相交于某一个点,或者一条边的中心,所以我们暴力枚举重心,计算以某个点为重心的点集对答案的贡献. 具体实现的时候,我 ...

  3. Library not found for -lAPOpenSdk

    多人开发合作的时候 总是会遇见各种各样的问题 今天就来讲一个关于友盟的问题 在我的小伙伴 用cocoapods 中添加了这样一句话 pod ‘UMengSocialCOM’,  并且pod updat ...

  4. vmware Selinux配置错误,导致无法启动虚拟机

    Linux 开机提示kernel panic - not syncing: Attempted to kill init! 解决方法: 系统启动的时候,按下‘e’键进入grub编辑界面,编辑grub菜 ...

  5. Powerdesigner逆向工程从mysql生成PDM

    大家喜欢用powerDesigner进行数据库建模.通常都是先设计出物理模型图,再转换出数据库需要的SQL语句,从而生成数据库.但“powerDesigner逆向工程”就能将数据库逆向转为物理模型图. ...

  6. XSS的原理分析与解剖:第三章(技巧篇)【转】

    0×01 前言: 关于前两节url: 第一章:http://www.freebuf.com/articles/web/40520.html 第二章:http://www.freebuf.com/art ...

  7. 使用python管理Cisco设备-乾颐堂

    今天发现一个老外使用python写的管理cisco设备的小框架tratto,可以用来批量执行命令. 下载后主要有3个文件: Systems.py 定义了一些不同设备的操作系统及其常见命令. Conne ...

  8. Python原始套接字编程-乾颐堂

    在实验中需要自己构造单独的HTTP数据报文,而使用SOCK_STREAM进行发送数据包,需要进行完整的TCP交互. 因此想使用原始套接字进行编程,直接构造数据包,并在IP层进行发送,即采用SOCK_R ...

  9. Go语言特性

    1.入口,go有且只有一个入口函数,就是main函数 liteide (IDE)的 一个工程(文件夹)只能有且只有一个main函数 package main import "fmt" ...

  10. JDK1.6 1.7 1.8 多版本windows安装 执行命令java -version 版本不变的问题

    现在Windows的java安装已经没有解压版本,Oracle官方也不会再提供了,只有安装程序 所以每当安装一次JDK,都会将 java.exe.javaw.exe.javaws.exe三个可执行文件 ...