numpy初认识

#numpy是一维或多维数组
1使用np.array()创建numpy
2使用plt创建
3使用np.routines函数创建

'''使用numpy创建'''
import numpy as np
arr=np.array([2,3]) #也可以写多维数组如[[1,2],[2,3]]为二维数组
print(arr)
print(type(arr))

数组与列表不同,列表可以表示多种数据类型,而数组只能表示同一种数据类型。 如果不统一则会强转 str>float>int

#使用plt创建
import matplotlib.pyplot as plt
#图片数据的读取
read=plt.imread('D:/1.JPG')
read
photo=plt.imshow(read)

在这里插入图片描述此为效果图

#生成数字
arr1=np.linspace(0,80,num=5)# 生成一组一维等差数列
print(arr1)
arr=np.arange(0,100,5)#生成一组一维等差数列,整数型
arr #jupyter中显示
#随机数的固定
np.random.seed(10)#固定时间种子
arr=np.random.randint(0,100,size=(5,8))
print(arr)
arr=np.random.random(size=(5,8))
arr
```python
#随机数

arr=np.random.randint(0,100,size=(5,8))
print(arr)
arr=np.random.random(size=(5,8))
arr

索引与切片

#numpy的切片与索引
arr=np.array([[2,5,5,5,5],[5,5,6,7,7]])
#arr[0]#索引第0行
arr[[0,1]] #索引0-1行
arr
#切片
arr=np.array([[2,5,5,5,5],[5,5,6,7,7],[7,7,7,5,8]])
#arr[行,列]
arr[:,0:2]
print(arr)

新的

import numpy as np
import matplotlib.pyplot as plt
#图片数据的读取
read=plt.imread('D:/1.JPG')
plt.imshow(read)
read_1=read[::-1,::-1,::-1]#依次为行反转,列反转,颜色反转
plt.imshow(read_1)

在这里插入图片描述

#变形
arr=np.array([[1,2,3],[4,5,6]])
print(arr)
np.shape(arr)
arr_1=arr.reshape((1,6))
print(arr_1)

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

#级联操作
read_pin=np.concatenate((read,read,read),axis=1)
read_jiu=np.concatenate((read_pin,read_pin,read_pin),axis=0)
plt.imshow(read_jiu)
np.shape(read_jiu)

在这里插入图片描述

import numpy as np
arr=np.random.randint(0,100,(4,3))
arr_1=np.random.randint(0,100,(4,3))
print(arr)
arr.sum()#所有的数加起来
arr.sum(axis=1)#列方向拼接
#min max mean(平均)同理,此为常见
#NUMPY常见三角函数 sin cos tan
print(np.sin(arr))
#四舍五入函数
np.around(arr,decimals=0)#第一位为数组,第二个为保留到几位数,若负数则为整数部分
#numpy的常见统计 amin amax ptp std var
import numpy as np
arr=np.random.randint(0,50,(5,5))
print(arr)
np.amax(arr,axis=0)
#amin 同理
np.ptp(arr,axis=1)#求极差
np.std(arr,axis=0)
np.var(arr)
#矩阵相关
import numpy.matlib as mat
mat.empty((5,5))#产生一个随机矩阵
'''matrix([[430.9776, 315.4176, 332.6976, 473.4976, 104.8576],
        [370.1776,  17.9776, 217.8576,  45.6976,  95.2576],
        [297.2176, 126.3376, 138.2976,   7.6176, 104.8576],
        [494.6176, 162.8176, 370.1776,  52.4176,  22.6576],
        [175.2976, 189.3376, 637.0576, 315.4176, 518.0176]])
此为返回值'''
mat.zeros((5,4))#返回一个0矩阵,若为ones则为1矩阵
'''matrix([[0., 0., 0., 0.],
        [0., 0., 0., 0.],
        [0., 0., 0., 0.],
        [0., 0., 0., 0.],
        [0., 0., 0., 0.]])
'''
#返回一个单位矩阵
mat.eye(n=5,M=5,k=0) #需要n=M ,k=0
#另一种方法
mat.identity(n=5)
'''
matrix([[1., 0., 0., 0., 0.],
        [0., 1., 0., 0., 0.],
        [0., 0., 1., 0., 0.],
        [0., 0., 0., 1., 0.],
        [0., 0., 0., 0., 1.]])
        '''
#转置矩阵
a=mat.empty((4,4))
print(a)
b=a.T
print(b)
'''
[[4.67296746e-307 1.78019082e-306 9.79107872e-307 1.78021527e-306]
 [1.69121096e-306 8.34441742e-308 6.89807188e-307 8.34454050e-308]
 [1.29061074e-306 1.78022342e-306 7.56594375e-307 1.11261027e-306]
 [1.69119873e-306 6.23058028e-307 6.23060065e-307 2.04712907e-306]]
[[4.67296746e-307 1.69121096e-306 1.29061074e-306 1.69119873e-306]
 [1.78019082e-306 8.34441742e-308 1.78022342e-306 6.23058028e-307]
 [9.79107872e-307 6.89807188e-307 7.56594375e-307 6.23060065e-307]
 [1.78021527e-306 8.34454050e-308 1.11261027e-306 2.04712907e-306]]
'''
c=a*b+a
print(c)#矩阵的运算 与数值相似
'''[[4.67296746e-307 1.78019082e-306 9.79107872e-307 1.78021527e-306]
 [1.69121096e-306 8.34441742e-308 6.89807188e-307 8.34454050e-308]
 [1.29061074e-306 1.78022342e-306 7.56594375e-307 1.11261027e-306]
 [1.69119873e-306 6.23058028e-307 6.23060065e-307 2.04712907e-306]]'''
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值