当前位置: 首页 > article >正文

一、Numpy使用

 1、numpy的简单使用

import numpy as np
#利用as给numpy起一个别名np

# 使用array来承接这个数组
array = np.array([[1,2,3],
                  [2,3,4]])

print(array)
print("number of dim:", array.ndim)  # ndim 数组维度
print("shape:", array.shape)         # 数组的形状 
print("size", array.size)            # 数组的元素个数

打印结果如左图

2、 np.ones  np.zeros empty

# 生成一个三行四列全为1的矩阵
a = np.ones((3, 4), dtype=np.int16)
print("三行四列全为1:\n", a)

#生成一个二行三列全为0的矩阵
b = np.zeros((2,3), dtype=float)
print("二行三列全为0:\n", b)

c = np.empty((3,4))
print("空矩阵:\n", c)

#利用 dtype= 可以更改所存储元素类型

3、arange(左闭右开的有序数组)

开始 结束 步长

a = np.arange(10, 20, 2)
print("从10开始到20,步长为2的有序数组:\n", a)

# 若一个参数默认为该数组元素为10,且步长为1
b = np.arange(10)
print("从0开始到10,步长为1的有序数组:\n", b)

# 若俩个参数默认步长为1,从10-20
c = np.arange(10, 20)
print("从10开始到20,步长为1的有序数组:\n", c)

4、生成线段

a = np.linspace(1, 10, 5)
print("从1到10,分为5段:\n", a)

5、加和运算

a = np.array([10,20,30,40])
b = np.arange(4)

print("数组a和数组b分别为:\n", a, b)
c = a + b
print("加和运算后的结果数组为:\n", c)

6、乘法运算

a = np.array([10,20,30,40])
b = np.arange(4)

print("数组a和数组b分别为:\n", a, b)
c = a * b
print("运算后的结果数组为:\n", c)

 7、乘方运算

b = np.arange(4)
print("运算前数组:\n", b)

c = b**2     注意此处的乘方用法

print("运算后的结果数组为:\n", c)

 8、三角函数

b = np.arange(4)
print("运算前数组:\n", b)

c = np.sin(b)
print("运算后的结果数组为:\n", c)

c = np.cos(b)
print("运算后的结果数组为:\n", c)

c = np.tan(b)
print("运算后的结果数组为:\n", c)

其他反三角函数

 9、判断结果筛选(< == >)

array = np.array([[1,2,3],
                  [2,3,4]])
print("该数组为:\n", array)
print("该数组中元素大于2的位置情况:\n", array > 2)
print("该数组中元素等于3的位置情况:\n", array == 3)
print("该数组中元素小于2的情况:\n", array < 2)

10、矩阵相乘

a = np.array([[1,2],
                  [2,3]])
b = np.arange(4).reshape((2,2))
print("a数组为:\n", a)
print("b数组为:\n", b)
c = a*b
c_dot = np.dot(a,b)   另外一种写法:  a.dot(b)

print("对应位置相乘结果:\n", c)
print("线性代数矩阵运算相乘结果:\n", c_dot)

 11、随机数组,min,max,sum

# 生成一个两行三列的随机数数组
a = np.random.random((2,3))

print("生成的该随机数组为:\n", a)
print("该数组中元素总和为:\n", np.sum(a))
print("该数组中元素最小值为:\n", np.min(a))
print("该数组中元素最大值为:\n", np.max(a))


http://www.kler.cn/a/311893.html

相关文章:

  • 案例精选 | 河北省某检察院安全运营中异构日志数据融合的实践探索
  • 《AI 使生活更美好》
  • 大语言模型在序列推荐中的应用
  • Vue2+3 —— Day3/4
  • 【在Linux世界中追寻伟大的One Piece】多路转接epoll
  • 域名服务系统DNS (Domain Name System)
  • C语言从头学61——学习头文件signal.h
  • 什么是“云原生”
  • Mysql梳理6——order by排序
  • 在 VS Code 中调试 C++ 项目
  • 【数据结构】动态开点线段树
  • 基于Android Studio 蜜雪冰城(奶茶饮品点餐)—原创
  • Java ERP系统源码深度解析:Spring Cloud Alibaba和Spring Boot的微服务实战
  • 云WAF能做什么?看它如何帮你应对网络攻击
  • 武汉网站建设实施方案
  • 猫咪为什么不吃猫罐头?解决挑食小猫!美味主食罐推荐!
  • 2.4 数据库表字段约束
  • 水经微图PC版5.0.0即将内测
  • MATLAB数学规划:2.线性规划
  • 分享一个 在线拍卖系统 商品竞拍平台Java、python、php三个技术版本(源码、调试、LW、开题、PPT)
  • MATLAB系列03:分支语句和编程设计
  • 指挥中心操作台怎么布局更合理
  • Can‘t connect to local MySQL server through socket
  • 【线性规划求解系列】MATLAB中使用linprog解决线性规划问题
  • 【学术会议:中国杭州,机器学习和计算机应用面临的新的挑战问题和研究方向】第五届机器学习与计算机应用国际学术会议(ICMLCA 2024)
  • 大数据-141 - ClickHouse 集群 副本和分片 Zk 的配置 Replicated MergeTree原理详解