记录Python的numpy库的详解

1.数组 list=[1,2] 转变成np的形式,转换成对像后,就可以使用很多的np自带的方法了

list1=[1,2]
a=np.array(list1)
#a--->array([1, 2])
a.dtype
#-->dtype('int32')

2. list1=[1,2] ,list2=[3.1,4,2],a=np.array([list1,list2])

list1,list2=[1,2],[3.1,4.2]
a=np.array([list1,list2])
#a--->array([[1. , 2. ],[3.1, 4.2]])
a.dtype
#--->dtype('float64')

3.指定数据类型,比如复数形式complex

c=np.array([list1,list2],dtype=complex)
#c---->array([[1. +0.j, 2. +0.j],[3.1+0.j, 4.2+0.j]])

4.查看数据结构

c.shape
#--->(2, 2)

5.想建一个所有值都是0的两行两列的np

np.zeros([2,2])
#-->array([[0., 0.],[0., 0.]])

6.想建一个所有值都是1的两行三列的np

np.ones([2,3])
#--->array([[1., 1., 1.],[1., 1., 1.]])

7.想建一个斜角为1,其他为0的矩阵

np.eye(5)
-----------------------------
array([[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.]])

8.生成数据arange跟python的range非常的像

np.arange(2,12,3)
------------------
array([ 2,  5,  8, 11])

9.想要在横线上等分打点,比如从0到10,那么等分就是0,5,10

np.linspace(0,10,3)
-----------------------
array([ 0.,  5., 10.])

10.np的操作,实际是数组里的每个数据进行for对自己进行操作,比如基本的运行,看代码

a=np.array([[1,2,3,4],[5,6,7,8]])
-----------------------------------
#a--->array([[1, 2, 3, 4], [5, 6, 7, 8]])#a*a
#a--->array([[ 1,  4,  9, 16],[25, 36, 49, 64]])#a**a
#a--->array([[       1,        4,       27,      256],[    3125,    46656,   823543, 16777216]])

11.两个np作相乘,其实是每个元素自己相乘,上代码,从代码上可以看到是a[0][0]与b[0][0]相乘,a[0][1]与b[0][1]相乘然后返回新数组,以此类推。

a=np.array([[1,3],[2,4]])
b=np.array([[0,2],[3,5]])
#a*b--->array([[ 0,  6],[ 6, 20]])

12.矩阵相乘

a=np.array([[1,3],[2,4]])
b=np.array([[0,2],[3,5]])
np.dot(a,b)
-------------------------
array([[ 9, 17],[12, 24]])

13.矩阵相加

a=np.array([[1,3],[2,4]])
b=np.array([[0,2],[3,5]])
np.add(a,b)
-------------------------
array([[1, 5], [5, 9]])

 14.生成随机矩阵,生成[0.0,1.0)之间的数

a=np.random.random([2,4])
-------------------------
array([[0.37254741, 0.32470436, 0.4185625 , 0.38438104],[0.53985976, 0.8305917 , 0.67535554, 0.84374047]])#总合
a.sum()
------------------------
3.634008570088778#最大
a.max()
------------------------
0.9493550940794919#最小
a.min()
------------------------
0.06081217802174732

15.把0到23生成6行4列,并分别沿着x轴(axis=1)与y轴(axis=0)相加,累加

b= np.arange(24).reshape(6,4)
b
-----------------------------
array([[ 0,  1,  2,  3],[ 4,  5,  6,  7],[ 8,  9, 10, 11],[12, 13, 14, 15],[16, 17, 18, 19],[20, 21, 22, 23]])#沿y轴 axis=0
b.sum(axis=0)
-----------------------------
array([60, 66, 72, 78])#沿x轴 axis=1
b.sum(axis=1)
-----------------------------
array([ 6, 22, 38, 54, 70, 86])#沿X轴累加
b.cumsum(axis=1)
------------------------------
array([[ 0,  1,  3,  6],[ 4,  9, 15, 22],[ 8, 17, 27, 38],[12, 25, 39, 54],[16, 33, 51, 70],[20, 41, 63, 86]])

16.使用function的形式

def f(x,y):return 4*x+y
b = np.fromfunction(f,(3,2),dtype=int)
#实际上(3,2)代表的就是[[0,0],[0,1],[1,0],[1,1],[2,0],[2,1]]
那么返回值就是
array([[0, 1],[4, 5],[8, 9]])b[:,1]-->array([[1, 5, 9]])
-------------------------------
#这个的意思就是”:“这个指的是全部行,第1列的数据全部拿出来

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/821303.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Element-Ui的Form表单:Label文本两端对齐,且必填项的*不影响布局

1. HTML 结构 首先&#xff0c;确保你的 HTML 或 Vue 模板中有一个 el-form 组件&#xff0c;类似下面这样&#xff1a; <div id"app"><el-form :model"form" label-width"100px"><el-form-item label"用户名">&l…

接口测试框架搭建D22

整体架构和分层设计 run.py 运行测试用例&#xff0c;生成测试报告 test_cases/ 登录用例 注册用例 其他业务用例... data/ 测试数据 libs 第三方插件&#xff0c;比如HTMLTestRunnerNew config config.yaml 静态配置数据 config.py 动态配置数据 reports 测试报告…

Mac搭建Java环境【环境搭建】

Mac搭建Java环境【环境搭建】 1 安装Java SDK 官网地址&#xff1a;https://www.oracle.com/java/technologies/downloads/archive/ 下载dmg&#xff0c;双击之后无脑安装即可。 # 进入 JDK 安装目录 cd /Library/Java/JavaVirtualMachines# 查看文件 ls# 输入 cd ~# 打开环…

代码随想录训练营第三十五期|第天15|二叉树part02|层序遍历 10 ● 226.翻转二叉树 ● 101.对称二叉树 2

102. 二叉树的层序遍历 - 力扣&#xff08;LeetCode&#xff09; /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val val; }* TreeNode…

DG怎样手动切主从-用普通命令方式(不用dg broker)

这里主库是orcl&#xff0c;从库是orclstd 一 将主库降为从库 1.1查看主库SWITCHOVER_STATUS的状态 #确认主库是否可以做switchover #不能切换的情况 SQL>SELECT SWITCHOVER_STATUS FROM V$DATABASE; SWITCHOVER_STATUS ------------------ SESSIONS ACTIVE 在这种…

别踩白块web小游戏

整体思路 1.设置一个游戏界面main&#xff08;最外面一圈方框&#xff09; 2.main内部放置一个容器container&#xff0c;容器非常长&#xff0c;且容器底部位于main的顶部 3.将容器内的黑块和白块事先处理好&#xff0c;并将黑块存储在黑块数组中 容器黑白块处理&#xf…

【开发问题记录】Nacos修改服务实例权重时报错

问题记录 一、问题描述1.1 产生原因1.2 产生问题 二、问题解决2.1 docker部署的nacos解决方案2.1.1 进入nacos容器2.1.2 查看当前目录2.1.3 进入data文件夹2.1.4 删除protocol文件2.2 本地部署的nacos 一、问题描述 1.1 产生原因 在运行项目时&#xff0c;在本地启动了一个服务…

vue3项目 使用 element-plus 中 el-collapse 折叠面板

最近接触拉了一个项目&#xff0c;使用到 element-plus 中 el-collapse 折叠面板&#xff0c;发现在使用中利用高官网多多少少的会出现问题。 &#xff08;1.直接默认一个展开值&#xff0c;发现时显时不显 2 . 数据渲染问题&#xff0c;接口请求了&#xff0c;页面数据不更新 …

js 截取指定字符后面/前面的所有字符串...

项目场景 在 JavaScript 中&#xff0c;你可以使用 substring() 或 substr() 方法来截取字符串中指定字符前面或后面的所有字符。 再配合**indexOf()**方法来判断字符所在的位置从而实现截取指定字符的前后字符串 解决方案&#xff1a; //js 截取指定字符后面/前面的所有字…

类激活映射详解

类激活映射&#xff08;CAM, Class Activation Mapping&#xff09;是一种常用于卷积神经网络&#xff08;CNN&#xff09;的技术&#xff0c;用来识别和解释模型在进行图像或时间序列分类任务时&#xff0c;哪些区域对最终分类决定起到了关键作用。下面&#xff0c;我将详细解…

大数据平台搭建2024(一)

一&#xff1a;基础配置 创建虚拟机并查出ip地址进行连接 ip a1.配置node01静态ip地址与主机名 vi /etc/sysconfig/network-scripts/ifcfg-ens33修改或添加如下内容&#xff1a; BOOTPROTO"static" ONBOOTyes #根据虚拟机网卡信息配置 IPADDR192.168.200.141 NET…

360度VR全景汽车漫游展示让爱车者能感受真实的驾驶体验

小米汽车的惊艳亮相&#xff0c;让无数爱车族心潮澎湃。然而&#xff0c;对于因时间和地理限制无法亲临现场的人来说&#xff0c;这份激动或许带有些许遗憾。如今&#xff0c;有了3D虚拟看车软件&#xff0c;这一切不再是问题。 web3D开发公司深圳华锐视点通过运用尖端的web3D开…

IntelliJ IDEA2024 安装包(亲测可用)

目录 一、软件简介 二、软件下载 一、软件简介 IDEA&#xff08;Integrated Development Environment for Apache&#xff09; 是一款专为 Apache 开发者设计的集成开发环境。该软件提供了丰富的功能和工具&#xff0c;帮助开发者更高效地创建、调试和部署 Apache 项目。 主…

hot100 -- 链表(中)

不要觉得力扣核心代码模式麻烦&#xff0c;它确实比不上ACM模式舒服&#xff0c;可以自己处理输入输出 只是你对 链表 和 return 的理解不到位 &#x1f442; ▶ 屿前世 (163.com) &#x1f442; ▶ see you tomorrow (163.com) 目录 &#x1f382;两数相加 &#x1f6a9;删…

python 绘制六种激活函数(sigmoid、tanh、relu、softmax、relu、elu)

1、效果 2、实现代码&#xff08;带注释&#xff09; import numpy as np # 导入 numpy 库, 用于数学运算 import matplotlib.pyplot as plt # 导入 matplotlib.pyplot, 用于绘图 import matplotlib as mpl # 导入 matplotlib 库, 用于图形配置plt.rcParams[font.sans-se…

mysql奇葩问题union

单独执行第一条&#xff0c;有三条结果&#xff1b; union之后&#xff0c;只有一条结果&#xff1b; union自动的把重复数据合并了&#xff1b;

使用Python生成100到算术题

需求描述&#xff1a;生成100道包含加法、减法、乘法、除法题目的数学题。 import random import pandas as pddef generate_math_questions(num_questions, question_types[addition, subtraction, multiplication, division], difficultyeasy, range_start1, range_end10):&…

Vue基础使用之V-Model绑定单选、复选、动态渲染选项的值

这里要说明一下&#xff0c;在v-model 绑定的值是id还是value是和<option>中的v-bind保持一致的&#xff0c;如第四个&#xff0c;如果是 <option :value"op[1]" 那v-model绑定的就是数组第二项的值2&#xff0c;4&#xff0c;6 如果是 <option :va…

《AI编程类工具之一——CodeArts Snap》

一.简介 CodeArts Snap是一款基于华为云研发的智能开发助手&#xff0c;它覆盖软件开发的全生命周期&#xff0c;提供端到端的智能支持。该工具的核心功能包括代码生成、研发知识问答、单元测试用例生成、代码解释、代码注释、代码翻译、代码调试以及代码检查等八大方面&#…

软件开发的20条原则

原则是工作的准则,代表了许多人从经验中总结出来的集体智慧 源自《软件开发的201个原则》 需求 需要明确 需求是什么?需求有具体文档记录吗?需求经过多方评审了吗?需求合理吗?需求投入产出比如何?原则46:避免再需求分析时进行系统设计 需求分析:定义系统/软件的黑盒行…