arcgis的numpy模块_numpy模块常用函数解析

https://blog.csdn.net/lm_is_dc/article/details/81098805numpy模块以下命令都是在浏览器中输入。cmd命令窗口输入:jupyter notebook后打开浏览器输入网址http://localhost:8888/一、导入模块import numpy as np1查看numpy版本np.__version__1Numpy可以提供数组支持以及相应...
摘要由CSDN通过智能技术生成

https://blog.csdn.net/lm_is_dc/article/details/81098805

numpy模块

以下命令都是在浏览器中输入。

cmd命令窗口输入:jupyter notebook

后打开浏览器输入网址http://localhost:8888/

一、导入模块

import numpy as np

1

查看numpy版本

np.__version__

1

Numpy可以提供数组支持以及相应的高效处理函数,是Python数据分析的基础,也是SciPy、Pandas等数据处理和科学计算库最基本的函数功能库,且其数据类型对Python数据分析十分有用。

二、创建数组(ndarray)

1. 使用np.array()

参数为列表: 如[1, 4, 2, 5, 3]

arr1=np.array([1,2,3,4])

arr1 #点击shift + Enter后可直接查看数组

1

2

1.1 查看变量的数据类型

type(arr1)

输出:numpy.ndarray

1

2

1.2 创建二维数组

arr2= np.array([[1,2,3],[4,5,6],[7,8,9]])

arr2

1

2

1.3 创建多维数组

如创建三维数组:

arry3=np.array([[[1,2,3],[4,5,6],[7,8,9]]])

arry3

1

2

1.4 注意

numpy默认ndarray的所有元素的类型是相同的

如果传进来的列表中包含不同的类型,则统一为同一类型,优先级:str>float>int

如:

np.array([1,2,'a'])

输出:array(['1', '2', 'a'],

dtype='

1

2

3

shape的使用:shape返回的是ndarray的数组形状(返回类型是元组)。返回值的数据个数表示的就是数组的维度

arr2.shape

输出:(3, 3) #意思是arr2是一个3行3列的数组

1

2

2、使用matplotlib.pyplot获取一个numpy数组,数据来源于一张图片

2.1、导入模块

import matplotlib.pyplot as plt

1

2.2 读取图片

img=plt.imread(r'./虎.jpg') #img此时就是numpy.ndarray

img.shape

输出:(369, 389, 3) #img形状为三维数组,369*389像素,3代表颜色维度

1

2

3

type(img)

输出:numpy.ndarray

1

2

2.3显示图片

plt.imshow(img)

plt.show()

1

2

2.4修改图片

img_ecg=img-50 #img-50意思是每个元素减去50,数组值改变,图片自然会改变

plt.imshow(img_ecg)

plt.show()

1

2

3

3、使用numpy的常见函数创建

包含以下常见创建方法:

3.1 np.ones(shape, dtype=None, order=’C’)

#创建2行2列的全部数值都为1的二维数组

arr= np.ones(shape=(2,2),dtype=int)

arr

输出:array([[1, 1],

[1, 1]])

1

2

3

4

5

3.2 np.zeros(shape, dtype=None, order=’C’)

#创建2行3列的全部数值都为0的二维数组

arr=np.zeros([2,3])

arr

输出:array([[ 0., 0., 0.],

[ 0., 0., 0.]])

1

2

3

4

5

3.3 np.full(shape, fill_value, dtype=None, order=’C’)

#创建2行3列的全部数值都为10的二维数组

#fill_value参数为数组填充的值

arr=np.full(shape=(2,4),fill_value=10,dtype=int)

arr

输出:array([[10, 10, 10, 10],

[10, 10, 10, 10]])

1

2

3

4

5

6

3.4 np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None) 等差数列

#数组初值为0,有10个值,终值为9

arr_linspace=np.linspace(start=0,stop=10,num=10,endpoint=False)

arr_linspace

输出:array([ 0., 1., 2., 3., 4., 5., 6., 7., 8., 9.])

1

2

3

4

3.5 np.arange([start, ]stop, [step, ]dtype=None)

##数组初值为0,有5(10除以2)个值,终值为8,只能创建一维数组

arr_arange=np.arange(0,10,2)

arr_arange

输出:array([0, 2, 4, 6, 8])

1

2

3

4

3.6 np.random.randint(low, high=None, size=None, dtype=’l’)

#创建一个随机数在[10,90)的3行4列二维数组

#size=[3]则是一个一维数组,size=[3,4,5]则是三维数组

#随机原理:根据当前系统的时间产生随机数

#可以固定种子,使用seed(种子)函数

#np.random.seed(1)

np.random.randint(10,90,size=[3,4])

1

2

3

4

5

6

3.7 np.random.randn(d0, d1, …, dn) 标准正太分布

#创建一个10个元素的一维数组

np.random.randn(10)

1

2

#创建一个多维数组

#如创建10行,10列的数组

np.random.randn((10,10))

1

2

3

3.8 np.random.random(size=None)

生成[0,1)的随机数

#创建一个2行2列的数值在[0,1)的二维数组

np.random.random(size=[2,2])

1

2

3.9 np.random.rand(d0,d1,…dn )

以给定的形状创建一个数组,并在数组中加入在[0,1)之间均匀分布的随机样本。

np.random.rand(10)

1

np.random.rand(2,2)

1

3.10 np.eye(N, M=None, k=0, dtype=float)

#创建一个对角线为1的矩阵(二维数组)

arr_eys=np.eye(4)

arr_eys

输出:

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

[ 0., 1., 0., 0.],

[ 0., 0., 1., 0.],

[ 0., 0., 0., 1.]])

1

2

3

4

5

6

7

8

9

三、ndarray的属性

4个必记参数:

ndim:维度

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值