numpy的基础用法

numpy的核心数据结构,就叫做array就是数组。

(1)shape:返回一个元组,表示array的维度
(2)ndim:一个数字,表示array维度的数目
(3)size:一个数字,表示array中所有数据元素的数目
(4)dtype:array中元素的数据类型(array的元素必须都是同一种数据类型)
创建array的方法:
(1)从python的列表list和嵌套列表创建array
(2)使用预定函数array,ones/ones_like(全为1),zeros/zeros_like(全为0),empty/empty_like(全为空),full/full_like(全部定义为某个值),eye(创建一个矩形,对角线的元素全为1)
(3)生成随机数的np.random模块构建
array本身支持的大量操作和函数:
(1)直接逐元素的加减乘除等算数操作
(2)更好用的面向多维的数组索引
(3)求sum/mean等聚合函数
(4)线性代数函数,比如求解逆矩阵,求解方程组

1.使用Python的list和嵌套list创建一维的array和二维的array

import numpy as np
x=np.array([1,2,3,4,5,6,7,8])#创建一个一维数组,也就是Python中的单元list
X=np.array(
[
  [1,2,3,4]
  [5,6,7,8]
])#创建一个二维数组,也就是Python的嵌套list


2.探索数组array的属性

x.shape    #------8
X.shape   # ------(2,4)
x.ndim    # ------1---维度数
X.ndim  # --------2
x.size    #-------8
X.size   # ------8
x.dtype   #------int(32)
X.dtype   #------int(32)


3.创建array的便捷函数:
(1)使用arange创建数字序列 arange((start=0),stop,(step=1),dtype=None):
    

 np.arange(10)     #-------stop,创建一维数字,0---9
 np.arange(0,10,2) #----start,stop,step,0,2,4,6,8


(2)使用ones创建全是1的数组  np.ones(shape,dtype=None,order='C')  shape可以输入一个整形数字,亦可以输入一个元组(2,3):
    

np.ones(10)         #----一维向量
np.ones((2,3))      #----2行三列
np.ones((2,3,4))    #---创建一个2行一列的然后2行一列中的每个元素是一个三行四列的元素
np.one((2,1,3,4))   #---创建一个2行一列的然后2行一列中的每个元素是一个三行四列的元素(记得每一行需要一个中括号,然后一个二维的需要一个中括号)


(3)使用ones_like创建形状相同的数组 np.ones_like(a,dtype=float,order='C')---就是创建一个跟a同样维度的array
 

np.ones_like(x)      #----创建一个一维的列表
np.ones_like(X)      #----创建一个二维的列表,两行四列


(4)zeros zeros_like和ones,ones_like操作基本相同,只不过一个是零一个是1
(5)empty  empty(shape,dtype=float,order='C')注意:数据是未初始化的,里面的值可能是随机值不要用
(6)使用empty_like创建形状相同的数组  empty_like(a==prototype,dtype=None)
(7)使用full创建指定值的数组  np.full(shape,fill_value,dtype=None,order='C'):
     

 np.full(10,666)          #-----创建一个一维列表,列表有十个数字,都是666
 np.full((2,4),333)       #---创建一个2行4列的列表,都是333


(8)使用full_like创建形状相同的数组  np.full_like(a,fill_value,dtype=None)
(9)使用random模块生成随机数的数组  randn(d0,d1,d2……dn)

  np.random.randn()


      若没有参数,则生成一个随机数
     当size是n个数时,m_1,m_2,…,m_n,若n为奇数,则返回一个m_1行1列的张量,其中每个元素是一个m_2行m_3列的张量,…,又其中每个元素是一个m_n-1行m_n列的张量,最小元素的每一行服从正态分布
     当size是n个数时,m_1,m_2,…,m_n,若n为偶数,则返回一个m_1行m_2列的张量,其中每个元素是一个m_3行m_4列的张量,…,
4.array本身支持的大量操作和函数
 

np.arange(10).reshape(2,5)       #------A=[[0,1,2,3,4],[5,6,7,8,9]]
A.shape                                          # -------(2,5)
A+1                                                   # ----给每个元素都加一
A*3                                           #-----每个元素都乘三
np.sin(A)                              #----求每个元素的sin函数
np.exp(A)                          # e的每个元素次方
B=np.random.randn(2,5)
A+B  A-B                           #(因为形状相同,可以直接进行加减,就是对应每个元素的加减)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值