科学计算库numpy的使用

import numpy as np
import matplotlib.pyplot as plt

#加载显示图片,目录根据实际情况写。
img_arr = plt.imread(‘D:\大数据分析\python\123.jpg’)
plt.imshow(img_arr)
在这里插入图片描述

#将图片进行左右翻转
plt.imshow(img_arr[:,::-1,:])
在这里插入图片描述

plt.imsave(‘D:\大数据分析\python\456.jpg’,img_arr)

#上下翻转
plt.imshow(img_arr[::-1,:,:])
在这里插入图片描述

#裁减,熊猫头部
plt.imshow(img_arr[40:290,100:400,:])
在这里插入图片描述

变形reshape(重点)

  • 注意:变形前和变形后数组的容量不可以发生变化

arr = np.random.randint(0,100,size=(2,8))
arr
在这里插入图片描述

arr_1 = arr.reshape((4,4))
arr_1
在这里插入图片描述

arr_2 = arr_1.reshape((16,))
arr_2
在这里插入图片描述

级联操作(重点)

- 将多个numpy数组进行横向或者纵向的拼接
  • axis轴向的理解
    • 0:列
    • 1:行
  • 问题:
    • 级联的两个数组纬度一样,但是行列个数不一样会如何?

arr1 = np.random.randint(0,10,size=(3,4))
arr2 = np.random.randint(0,10,size=(4,4))

np.concatenate((arr1,arr1),axis=0) #axia=0表示列,1表示行
在这里插入图片描述

np.concatenate((arr1,arr2),axis=0) #如果进行行跟行的级联要保证级联的两个数组的行数保持一致
在这里插入图片描述

#制作一个熊猫照片的9宫格
img_arr_3 = np.concatenate([img_arr,img_arr,img_arr],axis=1)
img_arr_9 = np.concatenate([img_arr_3,img_arr_3,img_arr_3],axis=0)
plt.imshow(img_arr_9)
在这里插入图片描述

常用的聚合操作(重点)

  • sum(求和),max(求最大值),min(求最小值),mean(求均值),count(求元素个数)

arr = np.random.randint(0,10,size=(4,6))
arr
在这里插入图片描述

#求所有元素的和
arr.sum()
在这里插入图片描述

#求每一列的和
arr.sum(axis=0)
在这里插入图片描述

#求每一行的和
arr.sum(axis=1)
在这里插入图片描述

np.square(arr)
在这里插入图片描述

常用的统计函数(重点)

  • numpy.median()函数用于计算数组a中元素的中位数(中值)
  • 标准差std(),标准差是一组数据平均值分散程度的一种度量。
    • 公式:std = sqrt(mean((x - x.mean())**2))
    • 如果数组是[1,2,3,4],则其平均值为2.5。因此,差的平方是[2.25,0.25,0.25,2.25],并且其平均值的平方根除以4,即sqrt(5/4),结果为1.1180339887498949。
  • 方差var(),统计中的方差(样本方差)是每个样本值与全体样本值的平均数之差的平方值的平均数,即 mean((x - x.mean())** 2)。换句话说,标准差是方差的平方根。

np.median(arr,axis=0)#求arr每一列对应的中位数
在这里插入图片描述

np.std(arr,axis=1)
在这里插入图片描述

np.std(arr,axis=0)
在这里插入图片描述

#求出arr中最大元素的下标
np.argmax(arr)
在这里插入图片描述

  • 27
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ak2111

你的鼓励将是我创作的最大动力。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值