Python-numpy基础--------2

news2024/9/22 19:19:40

1.full()创建函数

目录

1.full()创建函数

2.创建单位矩阵

3.linspace创建

4.logspace 创建

5.二维数组的索引和切片:

1.索引直接获取


在NumPy中,full() 函数用于创建一个给定形状、类型的新数组,并用指定的值填充这个数组。这个函数非常有用,当你需要快速初始化一个特定值填充的数组时。

函数语法:

numpy.full(shape, fill_value, dtype=None, order='C')
  • shape:数组的形状,整数或整数元组的序列。
  • fill_value:填充数组的值。
  • dtype:数组的数据类型,如果未给出,则根据其他输入参数的数据类型来推断。
  • order:{'C', 'F'},是否以行优先(C-style)或列优先(Fortran-style)顺序存储多维数据。这主要影响内存布局,并且对于二维数组,'C'意味着第一维度是行,'F'意味着第一维度是列。对于一维数组,这个参数没有影响
import numpy as np

# 创建一个一维数组,长度为5,所有元素都填充为7
arr_1d = np.full(5, 7)
print(arr_1d)

# 创建一个2x3的二维数组,所有元素都填充为8
arr_2d = np.full((2, 3), 8)
print(arr_2d)

# 创建一个3x4的二维数组,所有元素都填充为9.5,指定数据类型为float
arr_2d_float = np.full((3, 4), 9.5, dtype=float)
print(arr_2d_float)

# 创建一个形状为(2, 2, 2)的三维数组,所有元素都填充为True,数据类型为bool
arr_3d = np.full((2, 2, 2), True, dtype=bool)
print(arr_3d)
#输出:
# [7 7 7 7 7]
# [[8 8 8]
#  [8 8 8]]
# [[9.5 9.5 9.5 9.5]
#  [9.5 9.5 9.5 9.5]
#  [9.5 9.5 9.5 9.5]]
# [[[ True  True]
#   [ True  True]]
# 
#  [[ True  True]
#   [ True  True]]]

2.创建单位矩阵

eye和identity的使用:

n1 = np.eye(3,dtype=int)
n2 = np.identity(3,dtype=int)

3.linspace创建

linspace 函数用于生成一个等差数列,即在线性间隔的点上返回均匀间隔的数字。这个函数非常适合于当你需要在一个指定的间隔内生成一系列数值时,比如在数据点的生成、图形的绘制等方面。

语法:

numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None, axis=0)
  • start:序列的起始值。
  • stop:序列的结束值。如果endpoint为True,则这个值会包含在生成的数组中;如果为False,则不包含。
  • num:要生成的等间隔样本数量,默认是50。
  • endpoint:布尔值,如果为True,则stop是序列中的最后一个样本;如果为False,则生成的序列不包含stop。默认是True。
  • retstep:布尔值,如果为True,则返回(samplesstep),其中step是样本之间的间隔。
  • dtype:输出数组的类型。如果不给出,则从其他输入参数推断数据类型。
  • axis:在多维样本空间中,沿其放置结果的轴。如果是0,则结果是一个一维数组;如果是整数n,则结果是一个n+1维数组。
import numpy as np

# 生成从0到10(包括10)的11个等间隔点
arr = np.linspace(0, 10, 11)
print(arr)

# 生成从0到10的10个等间隔点,不包括10
arr_exclude_end = np.linspace(0, 10, 10, endpoint=False)
print(arr_exclude_end)

# 获取样本和样本之间的间隔
arr_with_step, step = np.linspace(0, 10, 4, retstep=True)
print(arr_with_step)
print("Step:", step) 
# 输出:
# [ 0.  1.  2.  3.  4.  5.  6.  7.  8.  9. 10.]
# [0. 1. 2. 3. 4. 5. 6. 7. 8. 9.]
# [ 0.          3.33333333  6.66666667 10.        ]
# Step: 3.3333333333333335

4.logspace 创建

logspace函数,用于生成在对数尺度上均匀分布的数值序列。这个函数非常适合于需要在对数轴上等间距表示数据的场景,比如频率、能量等物理量的表示

numpy.logspace(start, stop, num=50, endpoint=True, base=10.0, dtype=None, axis=0)
  • start:序列的起始值(作为底数的幂给出)。
  • stop:序列的结束值(作为底数的幂给出)。
  • num:生成的样本数,默认为50。
  • endpoint:如果为True,则stop是最后一个样本;如果为False,则stop不包括在内。默认为True。
  • base:对数的底数,默认为10。
  • dtype:输出数组的类型。如果未给出,则从其他输入参数推断数据类型。
  • axis:在结果数组中放置样本的轴。0表示沿着第一个轴放置,1表示沿着第二个轴,依此类推。默认为0。

         生成10到100之间的等间隔对数序列:

        

import numpy as np
logspace_values = np.logspace(1, 2, num=10)
print(logspace_values)
#输出:
# [ 10.          12.91549665  16.68100537  21.5443469   27.82559402
#   35.93813664  46.41588834  59.94842503  77.42636827 100.        ]

        生成2的幂次方的等间隔对数序列:

        

logspace_values_base2 = np.logspace(1, 4, num=10, base=2)
print(logspace_values_base2)
#输出:
# [ 2.          2.5198421   3.1748021   4.          5.0396842   6.34960421
#   8.         10.0793684  12.69920842 16.        ]

注意

  • start和stop参数:这两个参数的值应该根据实际需求进行设定,以确保生成的数组范围符合要求。同时,需要注意start的值应该小于stop的值,否则生成的数组将为空。
  • 数据类型(dtype):根据数据的特性和计算需求,选择合适的数据类型可以提高计算效率和精度。
  • endpoint参数:当endpoint为False时,生成的数组不会包含stop值对应的元素。在处理这种情况时,需要特别注意数组的实际范围,以避免计算错误或逻辑错误。

5.二维数组的索引和切片:

1.索引直接获取

使用坐标获取数组[x,y]

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

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

相关文章

p24 p25作业讲解(2)

#include<stdio.h> #include<stdlib.h> int count_bit_one(int n) { int count0;while(n){if(n%21){count;}nn/2;}return count;} int main(){int a0;scanf("%d",&a);//写一个函数求a的二进制(补码)表示中有几个1int countcount_bit_one(a);printf(&…

C盘上的软件怎么移动到D盘?C盘满了,教你轻松转移软件到D盘

在日常使用电脑的过程中&#xff0c;我们经常会遇到C盘空间不足的情况。为了释放C盘的空间&#xff0c;或者为了更好地管理我们的软件和文件&#xff0c;我们可能需要将安装在C盘的软件移动到D盘。那么&#xff0c;C盘上的软件怎么移动到D盘呢&#xff1f;本文将介绍两种常用的…

Ubuntu-文件管理器中鼠标右键添加文本文件

文件管理器中鼠标右键添加文本文件 一、概述二、步骤 一、概述 Ubuntu在文管右键发现没有创建文本文件的菜单&#xff0c; 期望如下所示&#xff0c;这样的操作非常简单 二、步骤 找到模板文件夹 在模板文件夹&#xff0c;创建自己想要的文件就好啦 这个也是支持放文件夹去…

Microsoft 365 Office BusinessPro LTSC 2024 for Mac( 微软Office办公套件)

Microsoft 365 Office BusinessPro LTSC 2024是一款专为商业用户设计的办公软件套件&#xff0c;它集成了Word、Excel、PowerPoint等核心应用&#xff0c;并特别包含了Microsoft Teams这一强大的协作工具。Teams将聊天、会议、文件共享、任务管理等功能整合到一个平台上&#x…

听说宇哥突然大幅删减了新36讲?25张宇强化究竟行不行呀?

宇哥深夜划重点&#xff0c;大幅删减新36讲&#xff01; 宇哥最近舆论压力很大&#xff0c;很多人怕36讲暑假学不完了。 甚至一些人开始考虑&#xff0c;要不要转武忠祥&#xff1f; 张宇划的重点课&#xff0c;其实就是&#xff1a;概念要听&#xff0c;计算不用听。 因为强…

SQL Server 数据误删的恢复

在日常的数据库管理中&#xff0c;数据的误删操作是难以避免的。为了确保数据的安全性和完整性&#xff0c;我们必须采取一些措施来进行数据的备份和恢复。本文将详细介绍如何在 SQL Server 中进行数据的备份和恢复操作&#xff0c;特别是在发生数据误删的情况下。假设我们已经…

苹果微信数据恢复的教程?3个方法,一学就会!

各位家人朋友们&#xff01;你是否有遇到过微信数据误删或者是找不到的窘况呢&#xff1f;是不是时常会发现时间较为久远的微信聊天记录或者是文件已经过期无法打开呢&#xff1f;这些生活上的小烦恼大家都会有&#xff0c;但是大部分人都不知道该如何解决微信数据恢复问题。今…

大厂面试官问我:Mysql B+树索引中B最后一层是双向链表还是单向链表?为什么这么设计?【后端八股文十四:Mysql索引八股文合集】

本文为【Mysql索引八股文合集】初版&#xff0c;后续还会进行优化更新&#xff0c;欢迎大家关注交流~ hello hello~ &#xff0c;这里是绝命Coding——老白~&#x1f496;&#x1f496; &#xff0c;欢迎大家点赞&#x1f973;&#x1f973;关注&#x1f4a5;&#x1f4a5;收藏…

局部加全局视角遮挡人脸表情识别方法

一、摘要 实际场景中各种遮挡增加了表情识别难度。为此&#xff0c;提出一种滑块局部加权卷积注意力和全局注意力 池化的视觉 Transformer 结合的方法来解决遮挡问题。 利用主干网络提取表情特征图&#xff0c;将表情特征图裁剪成 多个区域块&#xff0c;利用局部 Patch 注意力…

Mem0 - 个人 AI 的内存层

文章目录 一、关于 Mem0核心功能&#x1f511;路线图 &#x1f5fa;️常见用例Mem0与RAG有何不同&#xff1f; 二、快速入门 &#x1f680;1、安装2、基本用法&#xff08;开源&#xff09;3、高级用法&#x1f527;4、大模型支持 三、MultiOn1、概览2、设置和配置4、将记忆添加…

【嵌入式开发之并发程序设计】守护进程的定义、特点、相关概念及创建

守护进程的定义 守护进程(Daemon Process)&#xff0c;又叫精灵进程、监控进程&#xff0c;是Linux三种进程类型之一&#xff0c;是 Linux 中的后台服务进程&#xff0c;是一个生存期较长的进程&#xff0c;通常独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事…

亚信安全与软银中国全资企业爱思比通信达成战略合作

近日&#xff0c;亚信安全携手软银集团旗下全资企业爱思比通信科技&#xff08;上海&#xff09;有限公司&#xff08;以下简称“爱思比通信”&#xff09; 共同宣布&#xff0c;双方正式签署战略合作协议。依托双方在技术、业务和资源三大层面的实力与优势&#xff0c;亚信安全…

2024-07-23 Unity AI行为树2 —— 项目介绍

文章目录 1 项目介绍2 AI 代码介绍2.1 BTBaseNode / BTControlNode2.2 动作/条件节点2.3 选择 / 顺序节点 3 怪物实现4 其他功能5 UML 类图 项目借鉴 B 站唐老狮 2023年直播内容。 点击前往唐老狮 B 站主页。 1 项目介绍 ​ 本项目使用 Unity 2022.3.32f1c1&#xff0c;实现基…

韦东山嵌入式linux系列-查询方式的按键驱动程序_编写框架

1 LED 驱动回顾 对于 LED&#xff0c; APP 调用 open 函数导致驱动程序的 led_open 函数被调用。在里面&#xff0c;把 GPIO 配置为输出引脚。安装驱动程序后并不意味着会使用对应的硬件&#xff0c;而 APP 要使用对应的硬件&#xff0c;必须先调用 open 函数。所以建议在驱动…

算法-DFS搜索

题目一 解题思路 深度遍历剪枝优化 第r行&#xff0c;第i列能不能放棋子&#xff1a;用数组dg udg cor 分别表示&#xff1a;点对应的两个斜线以及列上是否有皇后。 边界问题&#xff1a; dg[i r] 表示 r行i列处&#xff0c;所在的对角线上有没有棋子 udg[n - i r]表示 r…

环信+亚马逊云科技服务:助力出海AI社交应用扬帆起航

随着大模型技术的飞速发展&#xff0c;AI智能体的社交体验得到了显著提升&#xff0c;AI社交类应用在全球范围内持续火热。尤其是年轻一代对新技术和新体验的热情&#xff0c;使得AI社交产品在海外市场迅速崛起。作为领先的即时通讯解决方案提供商&#xff0c;环信与亚马逊云科…

uni-app:踩坑路---scroll-view内使用fixed定位,无效的问题

前言&#xff1a; emmm&#xff0c;说起来这个问题整得还挺好笑的&#xff0c;本人在公司内&#xff0c;奋笔疾书写代码&#xff0c;愉快的提交测试的时候&#xff0c;测试跟我说&#xff0c;在苹果手机上你这个样式有bug&#xff0c;我倒是要看看&#xff0c;是什么bug。 安卓…

Golang | Leetcode Golang题解之第268题丢失的数字

题目&#xff1a; 题解&#xff1a; func missingNumber(nums []int) int {n : len(nums)total : n * (n 1) / 2arrSum : 0for _, num : range nums {arrSum num}return total - arrSum }

5.9 结构化开发方法

大纲 系统分析与设计概述&#xff08;选择题 1 分&#xff09; 结构化开发方法 系统分析阶段的主要工作 系统设计基本原理 内聚&#xff08;主要考点&#xff09;

【HarmonyOS学习】用户文件访问

概述 文件所有者为登录到该终端设备的用户&#xff0c;包括用户私有的图片、视频、音频、文档等。 应用对用户文件的创建、访问、删除等行为&#xff0c;需要提前获取用户授权&#xff0c;或由用户操作完成。 用户文件访问框架 是一套提供给开发者访问和管理用户文件的基础框…