np.repeat()函数

2024-06-15 18:32
文章标签 函数 np repeat

本文主要是介绍np.repeat()函数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

np.repeat函数

  • 使用np.repeat()展平二维数组
  • np.repeat()函数的坐标轴问题
    • 二维
    • 三维

numpy 模块中的 repeat 函数,总是会出现设置 axis 坐标轴的情况,这时的坐标轴有时候就显的十分混乱,每到此处就不知道该给 axis 什么值。特写一篇博客来详细说明这个问题。

使用np.repeat()展平二维数组

代码如下:

import numpy as npclass Debug:def __init__(self):self.array1 = np.array([[1, 2], [3, 4]])def mainProgram(self):print("The value of array1 is: ")print(self.array1)print("The repeated array is: ")array2 = np.repeat(self.array1, repeats=1)print(array2)if __name__ == '__main__':main = Debug()main.mainProgram()
"""
The value of array1 is: 
[[1 2][3 4]]
The repeated array is: 
[1 2 3 4]
"""    

我们可以看到我们输入的是一个二维数组,当保持 axis 参数为默认值 None(即不设定 axis 参数),同时我们设定 repeats 值为 1 时,输出结果变成了一个一维数组,因此这时的 np.repeats 函数类似numpy.ndarray.flatten()函数的功能。

np.repeat()函数的坐标轴问题

接下来我们研究一下关于 axis 坐标轴的问题。

二维

对于数组是二维的情况,代码如下:

import numpy as npclass Debug:def __init__(self):self.array1 = np.array([[1, 2], [3, 4]])def mainProgram(self):print("The value of array1 is: ")print(self.array1)print("The array2 is: ")array2 = np.repeat(self.array1, repeats=2, axis=0)print(array2)print("The array3 is: ")array3 = np.repeat(self.array1, repeats=2, axis=1)print(array3)if __name__ == '__main__':main = Debug()main.mainProgram()
"""
The value of array1 is: 
[[1 2][3 4]]
The array2 is: 
[[1 2][1 2][3 4][3 4]]
The array3 is: 
[[1 1 2 2][3 3 4 4]]
"""

我们可以看到,axis=0 时表示沿着y方向重复,axis=1 时表示沿着x方向重复。我们可以对比numpy数组的坐标轴表示,二维时,坐标轴为 (y, x),从左向右第一个参数 0 便代表 y 轴,1 代表 x轴。

三维

接下来我们研究一下数组是三维的情况,代码如下:

import numpy as npclass Debug:def __init__(self):self.array1 = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])def mainProgram(self):print("The value of array1 is: ")print(self.array1)print("The array2 is: ")array2 = np.repeat(self.array1, repeats=2, axis=0)print(array2)print("The array3 is: ")array3 = np.repeat(self.array1, repeats=2, axis=1)print(array3)print("The array4 is: ")array4 = np.repeat(self.array1, repeats=2, axis=2)print(array4)if __name__ == '__main__':main = Debug()main.mainProgram()
"""
The value of array1 is: 
[[[1 2][3 4]][[5 6][7 8]]]
The array2 is: 
[[[1 2][3 4]][[1 2][3 4]][[5 6][7 8]][[5 6][7 8]]]
The array3 is: 
[[[1 2][1 2][3 4][3 4]][[5 6][5 6][7 8][7 8]]]
The array4 is: 
[[[1 1 2 2][3 3 4 4]][[5 5 6 6][7 7 8 8]]]
"""

我们可以看到,axis=0 对应与沿着z轴重复,axis=1 对应沿着y轴重复,axis=2 对应沿着x轴重复。对比numpy坐标轴的表示,我们知道三维坐标轴为 (z, y, x),所以从左向右,0 对应z轴,1 对应 y轴,2 对应 x 轴。

如果大家觉得有用,就请点个赞吧~

这篇关于np.repeat()函数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1064240

相关文章

Python函数作用域示例详解

《Python函数作用域示例详解》本文介绍了Python中的LEGB作用域规则,详细解析了变量查找的四个层级,通过具体代码示例,展示了各层级的变量访问规则和特性,对python函数作用域相关知识感兴趣... 目录一、LEGB 规则二、作用域实例2.1 局部作用域(Local)2.2 闭包作用域(Enclos

MySQL count()聚合函数详解

《MySQLcount()聚合函数详解》MySQL中的COUNT()函数,它是SQL中最常用的聚合函数之一,用于计算表中符合特定条件的行数,本文给大家介绍MySQLcount()聚合函数,感兴趣的朋... 目录核心功能语法形式重要特性与行为如何选择使用哪种形式?总结深入剖析一下 mysql 中的 COUNT

MySQL 中 ROW_NUMBER() 函数最佳实践

《MySQL中ROW_NUMBER()函数最佳实践》MySQL中ROW_NUMBER()函数,作为窗口函数为每行分配唯一连续序号,区别于RANK()和DENSE_RANK(),特别适合分页、去重... 目录mysql 中 ROW_NUMBER() 函数详解一、基础语法二、核心特点三、典型应用场景1. 数据分

MySQL数据库的内嵌函数和联合查询实例代码

《MySQL数据库的内嵌函数和联合查询实例代码》联合查询是一种将多个查询结果组合在一起的方法,通常使用UNION、UNIONALL、INTERSECT和EXCEPT关键字,下面:本文主要介绍MyS... 目录一.数据库的内嵌函数1.1聚合函数COUNT([DISTINCT] expr)SUM([DISTIN

Python get()函数用法案例详解

《Pythonget()函数用法案例详解》在Python中,get()是字典(dict)类型的内置方法,用于安全地获取字典中指定键对应的值,它的核心作用是避免因访问不存在的键而引发KeyError错... 目录简介基本语法一、用法二、案例:安全访问未知键三、案例:配置参数默认值简介python是一种高级编

python 常见数学公式函数使用详解(最新推荐)

《python常见数学公式函数使用详解(最新推荐)》文章介绍了Python的数学计算工具,涵盖内置函数、math/cmath标准库及numpy/scipy/sympy第三方库,支持从基础算术到复杂数... 目录python 数学公式与函数大全1. 基本数学运算1.1 算术运算1.2 分数与小数2. 数学函数

Python中help()和dir()函数的使用

《Python中help()和dir()函数的使用》我们经常需要查看某个对象(如模块、类、函数等)的属性和方法,Python提供了两个内置函数help()和dir(),它们可以帮助我们快速了解代... 目录1. 引言2. help() 函数2.1 作用2.2 使用方法2.3 示例(1) 查看内置函数的帮助(

C++ 函数 strftime 和时间格式示例详解

《C++函数strftime和时间格式示例详解》strftime是C/C++标准库中用于格式化日期和时间的函数,定义在ctime头文件中,它将tm结构体中的时间信息转换为指定格式的字符串,是处理... 目录C++ 函数 strftipythonme 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五

Python中bisect_left 函数实现高效插入与有序列表管理

《Python中bisect_left函数实现高效插入与有序列表管理》Python的bisect_left函数通过二分查找高效定位有序列表插入位置,与bisect_right的区别在于处理重复元素时... 目录一、bisect_left 基本介绍1.1 函数定义1.2 核心功能二、bisect_left 与

java中BigDecimal里面的subtract函数介绍及实现方法

《java中BigDecimal里面的subtract函数介绍及实现方法》在Java中实现减法操作需要根据数据类型选择不同方法,主要分为数值型减法和字符串减法两种场景,本文给大家介绍java中BigD... 目录Java中BigDecimal里面的subtract函数的意思?一、数值型减法(高精度计算)1.