ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Numpy库基础学习-1

2022-05-02 10:02:50  阅读:183  来源: 互联网

标签:ndarry01 基础 学习 print 数组 np array Numpy Out


# NumPy:NumericalPython,即数值Python包,是Python进行科学计算的一个基础包
# Numpy是Python的开源数值计算扩展,是实现科学计算的包
'''
1)一个具有矢量算术运算和节省空间的多维数组,ndarray
2)用于对整数数据进行快速运算的标准函数ufunc
3)实用的线性代数,傅里叶变换,随机数生成。
4)提供高级的数值编程工具,矩阵数据类型,矢量处理,精密运算库,专为严格的数字处理而产生。
5)Numpy的数据结构:ndarry,一种多维数组对象
'''
# 导入numppy库
import numpy as np

'''
ndarry:N维数组
一种由相同类型的元素组成的多维数组,元素数量事先定好。
元素的数据类型有dtype对象来指定,每个ndarray只有一种dtype类型。
大小固定,创建数组时一旦指定好大小,就不会在发生改变。
'''
a=[(0,1,2,3,4),(1,2,3,4,5)]
print(a)
b=np.array(a)
print(b)
np.array([1,12,23,34,45])

[(0, 1, 2, 3, 4), (1, 2, 3, 4, 5)]
[[0 1 2 3 4]
 [1 2 3 4 5]]
Out[3]:
array([ 1, 12, 23, 34, 45])
In [6]: 
np.array([[30,32,35],[40,42,45],[50,52,55]]) 
Out[6]:
array([[30, 32, 35],
       [40, 42, 45],
       [50, 52, 55]])
In [9]: 
mask=np.array([1,0,1,0,0,1],dtype=np.bool)
print(mask) 
[ True False  True False False  True]
In [12]: 
a1=[mask,2]
print(a1) 
[array([ True, False,  True, False, False,  True]), 2]
In [14]: 
np.array([2,22,52]) 
Out[14]:
array([ 2, 22, 52])
In [4]: 
a2=np.array([[[3.4,5,6,8],[3,2.4,5,7]],[[2.3,4,5,6],[0.9,5,6,1]],[[9,6.7,3,2],[1,3,4,5]]]) 
In [5]: 
'''
ndarray属性:
ndim维度数量;shape表示各维度大小的元组(),数组的形状。
dtype说明数组元素数据类型的对象
size元素总个数。
'''
print(a2.ndim)    
print(a2.dtype)
print(a2.shape)  
print(a2.size) 
3
float64
(3, 2, 4)
24
In [22]:
ndarry01=np.array([[[1,2,3,5],[3,4,5,6],[4,5,6,7],[9,4,5,6]],[[9,8,4,5],[4,6,7,9],[9,5,3,1],[7,5,6,1]]],dtype=float)
print(ndarry01) 
[[[1. 2. 3. 5.]
  [3. 4. 5. 6.]
  [4. 5. 6. 7.]
  [9. 4. 5. 6.]]

 [[9. 8. 4. 5.]
  [4. 6. 7. 9.]
  [9. 5. 3. 1.]
  [7. 5. 6. 1.]]]
In [23]: 
# ndarry的shape属性
# 去掉最外围的[],得到ndarray01[0],ndarray01[1]
# 层层去中括号对,每去一层,一个维度,去掉一层[],后的元素个数逗号隔开的,就是该维度元素的个数。
# 3维的数组,页-行-列
ndarry01[0]
ndarry01[1] 
Out[23]:
array([[9., 8., 4., 5.],
       [4., 6., 7., 9.],
       [9., 5., 3., 1.],
       [7., 5., 6., 1.]])
In [25]: 
# 再去掉第二层[],得到ndarray01[0][0],ndarray01[0][1],ndarray01[0][2],ndarray01[0][3]
ndarry01[0][0] 
Out[25]:
array([1., 2., 3., 5.])
In [26]: 
# 再来去掉一层
ndarry01[0,1,3] 
Out[26]:
6.0
In [27]: 
# array函数创建数组:接收一个普通的Python序列,转成ndarry
# 用列表创建
a3=np.array([
[

[3,4,5,6],
   [4,5,6,7]
],
[
   [1,2,3,4],
   [2,3,4,5]
],
[
   [9,8,7,6],
   [4,5,6,7]
]
]) 
In [28]: 
print(a3) 
[[[3 4 5 6]
  [4 5 6 7]]

 [[1 2 3 4]
  [2 3 4 5]]

 [[9 8 7 6]
  [4 5 6 7]]]
In [29]: 
# 用元组创建
b=np.array((
(
    (1,2,3,4),(4,5,6,7),(9,3,4,5)
),
(
    (0,2,3,4),(5,4,3,1),(4,8,9,2)
)
)) 
In [6]: 
# 用列表里面嵌套元组创建
c=np.array([
(
    (1,2,3,4),(4,5,6,7),(9,3,4,5)
),
(
    (0,2,3,4),(5,4,3,1),(4,8,9,2)
)
]) 
In [7]: 
print(c) 
[[[1 2 3 4]
  [4 5 6 7]
  [9 3 4 5]]

 [[0 2 3 4]
  [5 4 3 1]
  [4 8 9 2]]]
In [32]: 
# 用函数创建
np.zeros((3,4))
np.ones((4,6))
np.empty((2,3,4)) 
Out[32]:
array([[[1., 1., 1., 1.],
        [1., 1., 1., 1.],
        [1., 1., 1., 1.]],

       [[1., 1., 1., 1.],
        [1., 1., 1., 1.],
        [1., 1., 1., 1.]]])
In [34]: 
# arange函数创建一维数组:通过指定开始值,终值和步长来创建一维数组
np.arange(20)
np.arange(0,20,1)
np.arange(0,20,2)
np.arange(0,12).reshape(3,4)   
Out[34]:
array([[ 0,  1,  2,  3],
       [ 4,  5,  6,  7],
       [ 8,  9, 10, 11]])
In [35]: 
#linspace函数:指定开始值,终值和元素个数创建一维数组,可以包含终值,等差数列
np.linspace(0,10,5) 
Out[35]:
array([ 0. ,  2.5,  5. ,  7.5, 10. ])
In [37]: 
# logspace函数:类似linspace,不过它创建等比数列
np.logspace(0,2,5) 
Out[37]:
array([  1.        ,   3.16227766,  10.        ,  31.6227766 ,
       100.        ])

标签:ndarry01,基础,学习,print,数组,np,array,Numpy,Out
来源: https://www.cnblogs.com/yeskey/p/16215118.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有