numpy中数组的简单运算以及使用

import numpy as np

# 定义一个数组
test_array = np.array([[1 ,2 ,3] ,[3 ,4 ,5]])
###数组简单的加减乘除法
# 加法
print(test_arra y +1)
# 返回[[2 3 4][4 5 6]]

# 减法
print(test_arra y -11)
# 返回[[-10  -9  -8][ -8  -7  -6]]

# 乘法
print(test_arra y *3)
# 返回[[ 3  6  9][ 9 12 15]]

# 除法
print(test_arra y /2)
# 返回[[0.5 1.  1.5][1.5 2.  2.5]]

import numpy as np
###数组的索引和切片
test_arr = np.arange(10)
print(test_arr)
print(test_arr[1])
print(test_arr[1:5])
"""
运行结果
[0 1 2 3 4 5 6 7 8 9]
1
[1 2 3 4]
"""

###使用列表或数组来进行赋值
import numpy as np
test_arr = np.arange(10)
print(test_arr)
test_arr[1:5] = [6,6,6,6]
print(test_arr)
test_arr[1:5] = np.array([9,9,9,9])
print(test_arr)

"""
运行结果
[0 1 2 3 4 5 6 7 8 9]
[0 6 6 6 6 5 6 7 8 9]
[0 9 9 9 9 5 6 7 8 9]
"""

###数组的单元素赋值
import numpy as np
test_arr = np.arange(10)
print(test_arr)
test_arr[1:5] = 12
print(test_arr)

"""
运行结果
[0 1 2 3 4 5 6 7 8 9]
[ 0 12 12 12 12  5  6  7  8  9]
"""
# 两个注意点
# (a)一个标量的赋值瞬间实现整个切片区域的赋值,叫做numpy的广播功能
# (b)数组切片和列表切片,仅数组切片有广播功能

###列表和数组的一个重要的区别
# 跟列表切片最大的区别是数组切片是原数组的视图,这就意味着原数组数据不会被复制保留,视图上任何改变都会影响原数组。
# 所以,数组切片赋值会改变原数组,列表切片赋值不会改变愿列表,想要改变列表需要直接给列表赋值。

# 二维数组的索引和切片
# 创建一个3x3的二维数组
import numpy as np
test_arr = np.arange(9).reshape(3 ,3)
print(test_arr)

"""
运行结果
[[0 1 2]
 [3 4 5]
 [6 7 8]]
"""
# 取出4

import numpy as np
test_arr = np.arange(9).reshape(3 ,3)
print(test_arr)
print(%test_arr[1 ,1]) # 第一个参数为行号,第二个参数为列号
"""
运行结果
[[0 1 2]
 [3 4 5]
 [6 7 8]]
 4
"""

# 三维数组的索引和切片
# 创建一个有两个3x3二位数组的三维数组
import numpy as np
test_arr = np.arange(18).reshape(2 ,3 ,3  )  # 第一个参数为总共有几个元素,第二个参数为行号,第三个参数为列号
print(test_arr)
"""
运行结果
[[[ 0  1  2]
  [ 3  4  5]
  [ 6  7  8]]

 [[ 9 10 11]
  [12 13 14]
  [15 16 17]]]
"""
# 取出9
print(test_arr[1 ,0 ,0])
# 若array切片时不想改变原array的结构,可以使用copy()先进行拷贝
test_xxx = np.arange(18).reshape(2 ,3 ,3)
test_ttt = test_xxx.copy()
test_ttt[1 ,0 ,0] = 333
print(test_xxx)
print(test_ttt)

###布尔形索引(进行筛选)
import numpy as np

name = np.array([‘wiz‘ ,‘gougou‘ ,‘ac‘ ,‘lc‘])
score = np.array([[99 ,99 ,99] ,[88 ,88 ,88] ,[81 ,87 ,66] ,[100 ,100 ,100]])
print(score[name==‘gougou‘])
"""
运行结果
[[88 88 88]]
"""

###数组的转置
arr = np.arange(16).reshape(2 ,2 ,4)
print(arr)
print(arr.T)

###numpy的基本数学统计方法
# 方差(体现数组中数据的离散情况,数值越小数据越稳定)
arr = np.arange(16).reshape(2 ,4 ,2)
print(arr.var())
# 标准差
print(arr.std())

原文地址:https://www.cnblogs.com/xaiobong/p/10074741.html

时间: 2024-10-06 14:16:47

numpy中数组的简单运算以及使用的相关文章

numpy中数组(矩阵)的乘法

我们知道在处理数据的时候,使用矩阵间的运算将会是方便直观的.matlab有先天的优势,算矩阵是它的专长.当然我们用python,经常要用到的可能是numpy这个强大的库. 矩阵有两种乘法,点乘和对应项相乘(element-wise product).在numpy中应该怎么实现呢,看看下面的例子就明白了. ## A = B = array([[1, 2], ## [3, 4]]) >>>A = np.array([[1,2],[3,4]]) >>>B = np.array

简谈Java中数组的简单应用--------------------之思路拓展

已知一个数组,下面我们做三件事 1.打印一个数组所有元素 2.求这些数值的和 3.问一个数是3440在这个数组里存在吗? 1 package cn.happy; 2 3 public class Day03 { 4 public static void main(String[] args) { 5 //Ctrl+F:快速查找和替换 6 int[] nums={8,4,2,1,23,344,12}; 7 //1.只管打印 8 for (int i = 0; i < nums.length; i+

python numpy中数组.min()

https://blog.csdn.net/ssdut_209/article/details/50938413 >>> a=array([[1,5,3],[2,6,3]]) >>> a array([[1, 5, 3], [2, 6, 3]]) >>> print(a.min()) #无参,所有中的最小值 1 >>> print(a.min(0)) ## axis=0; 每列的最小值 [1 5 3] >>> pri

numpy中关于数组的合并,拆分,及降维

numpy中数组的合并: 1.stack函数,合并后,数组维数+1,其实就是将数组按照某种某个轴线进行合并形成新的数组. a=np.ones((5,3)) b=np.zeros((5,3)) c=np.stack((a,b),axis=1) print(c.shape)#维数为5,2,3,在axis=1方向增加一个维度 2.hstack函数,将数组2水平拼接到数组1 3.vstack函数,将数组2垂直拼接到数组1下方. 4.column_stack()函数,等价于hstack函数. 5.row_

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

缘起:在老男孩进行linux培训shell编程教学中,发现不少水平不错的网友及同学对数组仍然很迷糊,下面就给大家分享下数组的用法小例子,希望能给大家一点帮助.其实SHELL的数组很简单,好用.我们学习都应该遵循简单.易用的原则. shell编程中数组的简单用法及示例 新版本的Bash支持一维数组. 数组元素可以使用符号variable[xx]等方式来初始化. 另外, 脚本可以使用declare -a variable语句来指定一个数组等.要引用一个数组元素(也就是取值), 可以使用大括号, 访问

数据分析2 numpy(ndarray数组,属性,创建,索引切片,运算,函数,随机数), Pandas(Series创建,缺失值处理,特性,索引,DataFrame)

Numpy numpy数据类型 1.为啥使用numpy ? ndarray是一个多维数组列表 Numpy的核心特征就是N-维数组对----ndarray 它和python中的列表区别: 1.数组对象内元素类型必须相同 2.数组大小不可修改 2.创建ndarray     数组 3.常见的属性 数据类型 astype()方法可以修改数组类型 4.ndarray的创建方式 5.索引 6.切片 7.数组的向量运算和矢量运算 8. 布尔型索引 9.花式索引 10.一元函数 11.数学统计函数 12.随机

Android中资源文件中的字符串数组string-array简单用法

在Android中,用string-array是一种简单的提取XML资源文件数据的方法. 例子如下: 把相应的数据放到values文件夹的strings.xml文件里,或是其他自定义的xml中都可以,以下操作方法相同. <?xml version="1.0" encoding="utf-8"?> <resources> <string-array name="sports"> <item>足球<

numpy 中的reshape,flatten,ravel 数据平展,多维数组变成一维数组

numpy 中的reshape,flatten,ravel 数据平展,多维数组变成一维数组 import numpy as np 使用array对象 arr1=np.arange(12).reshape(3,4) print(arr1) print(type(arr1)) [[ 0 1 2 3] [ 4 5 6 7] [ 8 9 10 11]] <class 'numpy.ndarray'> flatten 展平 a=arr1.flatten() # 默认参数order=C,按照行进行展平:o

numpy库中数组的数据类型

numpy库中数组的数据类型 dtype是一个特殊的对象,它含有ndarray将一块内存解释为特殊数据类型所需要的信息 指定数据类型创建数组 >>> import numpy as np >>> arr1=np.array([1,2,3,4],dtype=np.float64) >>> arr2=np.array([1,2,3,4],dtype=np.int32) >>> arr1.dtype dtype('float64') >