在 Python 中使用 reshape 来重塑数组

2024-01-10

我有一个如下所示的数组:

array([[0, 0, 0, 0, 0, 0, 0, 0],
       [1, 1, 1, 1, 1, 1, 1, 1],
       [2, 2, 2, 2, 2, 2, 2, 2],
       [3, 3, 3, 3, 3, 3, 3, 3],
       [4, 4, 4, 4, 4, 4, 4, 4],
       [5, 5, 5, 5, 5, 5, 5, 5],
       [6, 6, 6, 6, 6, 6, 6, 6],
       [7, 7, 7, 7, 7, 7, 7, 7]])

我如何使用 reshape 将其分成 4 个卡盘,使其看起来像

array([[[0, 0, 0, 0],  
       [1, 1, 1, 1],  
       [2, 2, 2, 2],  
       [3, 3, 3, 3]],  
       [[0, 0, 0, 0],  
       [1, 1, 1, 1],  
       [2, 2, 2, 2],  
       [3, 3, 3, 3]], 
       [[4, 4, 4, 4],
       [5, 5, 5, 5],
       [6, 6, 6, 6],
       [7, 7, 7, 7]],
       [[4, 4, 4, 4],
       [5, 5, 5, 5],
       [6, 6, 6, 6],
       [7, 7, 7, 7]]])

我在 reshape(m,n,l) 中尝试了 m、n、l 的不同整数组合,但没有任何效果。


编辑:抱歉,我没有意识到这是 3 维结果,而不是 4 维结果。要获得 3D 形状,您必须再次重塑。还有额外的重塑will复制数据。

你不能,你还需要转置:

In [1]: a = np.arange(8)[:,None].repeat(8,axis=1)

In [2]: a
Out[2]: 
array([[0, 0, 0, 0, 0, 0, 0, 0],
       [1, 1, 1, 1, 1, 1, 1, 1],
       [2, 2, 2, 2, 2, 2, 2, 2],
       [3, 3, 3, 3, 3, 3, 3, 3],
       [4, 4, 4, 4, 4, 4, 4, 4],
       [5, 5, 5, 5, 5, 5, 5, 5],
       [6, 6, 6, 6, 6, 6, 6, 6],
       [7, 7, 7, 7, 7, 7, 7, 7]])

In [3]: b = a.reshape(2,4,2,4)

In [4]: b
Out[4]: 
array([[[[0, 0, 0, 0],
         [0, 0, 0, 0]],
         ...
        [[7, 7, 7, 7],
         [7, 7, 7, 7]]]])

In [5]: b.transpose(0,2,1,3)
Out[5]: 
array([[[[0, 0, 0, 0],
         [1, 1, 1, 1],
         [2, 2, 2, 2],
         [3, 3, 3, 3]],

        [[0, 0, 0, 0],
         [1, 1, 1, 1],
         [2, 2, 2, 2],
         [3, 3, 3, 3]]],


       [[[4, 4, 4, 4],
         [5, 5, 5, 5],
         [6, 6, 6, 6],
         [7, 7, 7, 7]],

        [[4, 4, 4, 4],
         [5, 5, 5, 5],
         [6, 6, 6, 6],
         [7, 7, 7, 7]]]])
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Python 中使用 reshape 来重塑数组 的相关文章

  • Python 切片对象和 __getitem__

    python 中是否有内部的东西来处理传递给的参数 getitem 不同 并自动转换start stop step构造成切片 这是我的意思的演示 class ExampleClass object def getitem self args
  • 如何使用 Python 3 绕过 HTTP Error 403: Forbidden with urllib.request

    您好 不是每次都这样 但有时在尝试访问 LSE 代码时 我会收到每一个烦人的 HTTP 错误 403 禁止消息 任何人都知道我如何仅使用标准 python 模块来克服这个问题 遗憾的是没有漂亮的汤 import urllib request
  • Virtualenv 在 OS X Yosemite 上失败并出现 OSError

    我最近更新到 OSX Yosemite 现在无法使用virtualenv pip 每当我执行 virtualenv env 它抛出一个 OSError Command Users administrator ux env bin pytho
  • 反编译Python 3.9.2的PYC文件[重复]

    这个问题在这里已经有答案了 目前 我有一个 3 9 2 版本的 python 的 PYC 文件 P S 这适用于所有 3 9 及更高版本 我正在尝试反编译 PYC 文件 但它显示错误 因为 uncompyle6 或者更确切地说 新版本 de
  • 按边距(“全部”)值列对 Pandas 数据透视表进行排序

    我试图根据 pandas 数据透视表中的行总和对最后一列 边距 aggrfunc 进行降序排序 我知道我在这里错过了一些简单的东西 但我无法弄清楚 数据框 数据透视表 WIDGETS DATE 2 1 16 2 2 16 2 3 16 Al
  • 在Python中从大文件中搜索单词列表

    我是新蟒蛇 我有一个单词列表和一个非常大的文件 我想删除文件中包含单词列表中的单词的行 单词列表按排序给出 并且可以在初始化期间输入 我正在努力寻找解决这个问题的最佳方法 我现在正在进行线性搜索 这花费了太多时间 有什么建议么 您可以使用i
  • IndexError:索引 10 超出尺寸为 10 的轴 0 的范围

    我正在以数字方式为 x 网格和 x 向量以及时间网格设置网格 但我再次设置了一个数组x 位置 只能在 0 到 20 之间并且t 时间 将从 0 到 1000 以便求解热方程 但每次我想要 例如 我将步数设置为 10 时 都会收到错误 Tra
  • Series.sort() 和 Series.order() 有什么区别?

    s pd Series nr randint 0 10 5 index nr randint 0 10 5 s Output 1 3 7 6 2 0 9 7 1 6 order 按值排序并返回一个新系列 s order Output 2 0
  • 使用 Paramiko 进行 DSA 密钥转发?

    我正在使用 Paramiko 在远程服务器上执行 bash 脚本 在其中一些脚本中 存在与其他服务器的 ssh 连接 如果我只使用 bash 不使用 Python 我的 DSA 密钥将被第一个远程服务器上的 bash 脚本转发并使用 以连接
  • Python Tkinter 模块不显示输出

    我正在尝试学习 Python 并尝试使用 Python 中的 GUI 并遇到了这个 Tkinter 模块 我的代码运行 但运行时窗口没有出现 我的代码如下 from Tkinter import to create a root windo
  • 使用 for 循环创建一系列元组

    我已经搜索过 但找不到答案 尽管我确信它已经存在了 我对 python 很陌生 但我以前用其他语言做过这种事情 我正在以行形式读取数据文件 我想将每行数据存储在它自己的元组中 以便在 for 循环之外访问 tup i inLine wher
  • Spark 和 Python 使用自定义文件格式/生成器作为 RDD 的输入

    我想问一下 Spark 中输入的可能性 我可以看到从http spark apache org docs latest programming guide html http spark apache org docs latest pro
  • 从 Flask 运行 NPM 构建

    我有一个 React 前端 我想在与我的 python 后端 API 相同的源上提供服务 我正在尝试使用 Flask 来实现此目的 但我遇到了 Flask 找不到我的静态文件的问题 我的前端构建是用生成的npm run build in s
  • 是否需要关闭没有引用它们的文件?

    作为一个完全的编程初学者 我试图理解打开和关闭文件的基本概念 我正在做的一项练习是创建一个脚本 允许我将内容从一个文件复制到另一个文件 in file open from file indata in file read out file
  • 使用 Python 将连续日期分组在一起

    Given dates datetime 2014 10 11 datetime 2014 10 1 datetime 2014 10 2 datetime 2014 10 3 datetime 2014 10 5 datetime 201
  • 在Raspberry pi上升级skimage版本

    我已经使用 Raspberry Pi 2 上的 synaptic 包管理器安装了 python 包 然而 skimage 模块版本 0 6 是 synaptic 中最新的可用版本 有人可以指导我如何将其升级到0 11 因为旧版本中缺少某些功
  • 为什么 __dict__ 和 __weakref__ 类从未在 Python 中重新定义?

    类创建似乎从来没有re 定义 dict and weakref class属性 即 如果它们已经存在于超类的字典中 则它们不会添加到其子类的字典中 但始终re 定义 doc and module class属性 为什么 gt gt gt c
  • 如何将带有参数的Python装饰器实现为类?

    我正在尝试实现一个接受一些参数的装饰器 通常带有参数的装饰器被实现为双重嵌套闭包 如下所示 def mydecorator param1 param2 do something with params def wrapper fn def
  • 将 Keras 集成到 SKLearn 管道?

    我有一个 sklearn 管道 对异构数据类型 布尔 分类 数字 文本 执行特征工程 并想尝试使用神经网络作为我的学习算法来拟合模型 我遇到了输入数据形状的一些问题 我想知道我想做的事情是否可能 或者我是否应该尝试不同的方法 我尝试了几种不
  • 定义在文本小部件中双击时选择哪些字符

    在 Windows 上 双击文本小部件中的单词也将选择连接的标点符号 有什么方法可以定义您想要选择的角色吗 tcl wordchars该变量的值是一个正则表达式 可以设置它来控制什么被视为 单词 字符 例如 通过双击 Tk 中的文本来选择单

随机推荐

  • 防止TinyMCE删除span元素

    这是问题演示 你可以在这里尝试一下 http fiddle tinymce com SLcaab http fiddle tinymce com SLcaab 这是TinyMCE默认配置 减去所有插件 使用扩展有效元素 跨度 1 打开 Ht
  • 如何在 Linux 和 Solaris 上编译 C?

    我想制作一个可以在 Linux 和 Solaris 中编译的 Makefile 我知道如何单独执行此操作 但如何将两者结合起来并能够检测我正在使用哪种操作系统 我试图仅对一个简单的 C 文件执行此操作 但更改的是编译器的名称 GNU Aut
  • 在 C++ 中,编译器“内联”函数对象意味着什么?

    在维基百科中它表示此类对象与 for each 一起使用时具有性能优势 因为编译器可以 内联 它们 我对这在这种情况下的确切含义有点模糊 或者在我不好意思说的任何情况下 谢谢你的帮助 最后一个参数为for each模板是一个functor
  • iOS 12 在 QuickType 栏中建议电话号码

    Lyft 如何在 QuickType 栏中建议我的电话号码 以便我无需手动输入 我知道 Apple 在 iOS 12 中引入了自动填充用户名 密码 安全代码等功能 看起来此电话号码建议可能使用类似的功能 但我不知道如何让我的任何应用程序建议
  • http://schema.openid.net/contact/email 和 http://axschema.org/contact/email 之间的区别

    何时使用http schema openid net contact email http schema openid net contact email以及何时使用http axschema org contact email http
  • 捕获信号:使用成员函数作为信号处理程序

    我有一个对象在无限循环中执行一些工作 这main 实例化该对象并调用run 方法 由于我不想使用线程 因此我需要一个解决方案来使我的对象停止运行 下面你就可以看到我的想法了 struct Foo void run running 1 whi
  • 如何使用 C# 启动或停止远程计算机中的 IIS 和 Windows 服务

    这段代码出现异常 尽管我在远程计算机上拥有管理员权限 class Program static void Main string args var sc new System ServiceProcess ServiceController
  • Docker 在构建时组成缺失的纱线依赖项

    在Dockerfile中运行yarn install时无法获取node modules文件夹 test sof docker compose yml Dockerfile package json yarn lock docker comp
  • HTTP 错误 503。该服务在简单的 ASP.NET 4.0 网站下不可用 [关闭]

    Closed 这个问题是与编程或软件开发无关 help closed questions 目前不接受答案 我的本地笔记本电脑上发生了一些奇怪的事情 我在本地工作了很长时间的网站没有启动 为了解决这个问题 我创建了一个仅包含 index ht
  • AngularJS 会忽略 HTTP 标头中的 Set-Cookie

    我正在开发一个基于客户端 AngularJS 和服务器端 API Tomcat Jersey for WS 的 Java 应用程序 我的API的某些路径受到限制 如果用户没有会话 则返回的响应状态为401 在客户端 401 http状态被拦
  • 了解类对象构造

    我正在阅读 N3797 的第 12 7 条 给出以下示例 struct X int i struct Y X Y non trivial struct A int a struct B public A int j Y y non triv
  • 读取带有转义字符的 csv

    我有一个 csv 文件 其中包含一些文本 我想对这段文本进行标记 拆分为单词列表 但我遇到了如何处理的问题pd read csv解释转义字符 我的 csv 文件如下所示 text number one line nother line 12
  • 使用 R 将数据帧的多行转换为一行多列[重复]

    这个问题在这里已经有答案了 我有一个包含四列的数据框 df data frame UserId c 1 2 2 2 3 3 CatoId c C A B C D E No c 1 9 2 2 5 3 UserId CatoId No 1 C
  • 如何在 TeamCity 中设置构建代理优先级?

    我有两个代理可以构建我的配置 我设置了两个 因为有时我需要同时进行两个构建 如果两者都空闲且可用 如何设置构建代理优先级以强制 TeamCity 选择特定代理 现在它随机或通过一些未知因素选择代理 您可以过滤使用哪些代理 但我不确定您是否可
  • Android Q 中未显示 Toast

    Toast不适用于安卓Q 有什么变化吗Toast 我找不到任何发行说明Toast 我的代码很简单 override fun onCreate savedInstanceState Bundle super onCreate savedIns
  • Rasa 聊天机器人可以发起对话吗?

    我计划部署基于 rasa 的机器人和监控引擎 因此 如果出现问题 我希望机器人开始与特定用户进行对话 那可能吗 一个简单的方法是将用户消息从您的监控系统发送到您的输入通道 https rasa com docs core connector
  • 从 ActiveRecord 模型集合构建哈希

    我正在尝试从模型构建哈希 这就是我想要构建的哈希类型 United Sates gt us United Kingdom gt uk 我尝试了很多方法 现在只是在兜圈子 这只是我的一些糟糕的尝试 select Array new count
  • 当我在手机设置中启用密码/锁定图案时,如何以编程方式解锁 Android 手机?

    我尝试使用以下代码来解锁屏幕 只有在手机设置中没有启用密码 锁定图案的情况下 它才能在我的 Android 2 3 6 手机上正常工作 如果我在 Android 2 3 6 手机设置中启用密码 锁定图案 代码将导致手机显示密码 锁定图案屏幕
  • 空外键,在使用 hibernate [4.1.1] 注释的 ManyToOne 关系中

    我试图使用坚持一对多和多对一的关系休眠4 1 1但外键始终是NULL 有两个实体 Account and Client A Client可以有多个Accounts同时Account恰好有一个Client 以下是课程 仅重要的 账户 java
  • 在 Python 中使用 reshape 来重塑数组

    我有一个如下所示的数组 array 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 6 6 6