基于其他阵列形状的零填充阵列

2024-04-16

我有 K 个特征向量,它们都共享维度 n,但具有可变维度 m (n x m)。他们都生活在一个列表中。

to_be_padded = []

to_be_padded.append(np.reshape(np.arange(9),(3,3)))

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

to_be_padded.append(np.reshape(np.arange(18),(3,6)))

array([[ 0,  1,  2,  3,  4,  5],
       [ 6,  7,  8,  9, 10, 11],
       [12, 13, 14, 15, 16, 17]])

to_be_padded.append(np.reshape(np.arange(15),(3,5)))

array([[ 0,  1,  2,  3,  4],
       [ 5,  6,  7,  8,  9],
       [10, 11, 12, 13, 14]])

我正在寻找一种智能方法,对这些 np.arrays 的行进行零填充,以便它们都共享相同的维度 m。我尝试用 np.pad 解决它,但我无法想出一个漂亮的解决方案。任何朝着正确方向的帮助或推动将不胜感激!

结果应该使数组看起来像这样:

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

array([[ 0,  1,  2,  3,  4,  5],
       [ 6,  7,  8,  9, 10, 11],
       [12, 13, 14, 15, 16, 17]])

array([[ 0,  1,  2,  3,  4, 0],
       [ 5,  6,  7,  8,  9, 0],
       [10, 11, 12, 13, 14, 0]])

你可以使用np.pad https://docs.scipy.org/doc/numpy-1.15.0/reference/generated/numpy.pad.html为此,这也可以垫2-D使用指定填充宽度的值元组的数组,((top, bottom), (left, right))。为此,您可以定义:

def pad_to_length(x, m):
    return np.pad(x,((0, 0), (0, m - x.shape[1])), mode = 'constant')

Usage

您可以首先找到ndarray列数最多。假设你有两个,a and b:

a = np.array([[0, 1, 2],
       [3, 4, 5],
       [6, 7, 8]])

b = np.array([[ 0,  1,  2,  3,  4],
       [ 5,  6,  7,  8,  9],
       [10, 11, 12, 13, 14]])

m = max(i.shape[1] for i in [a,b])
# 5

然后使用这个参数来填充ndarrays:

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

基于其他阵列形状的零填充阵列 的相关文章

随机推荐

  • 在 OpenGL 着色器中检测 NaN 的最佳方法

    今天早上我遇到了一个似乎神秘的错误 我很幸运能够很快找到解决方案 我除以计数器以生成片段着色器内部的平均值 当然 当计数器为零时 所得的颜色值变为 NaN 在混合过程中 NVidia 优雅地将 NaN 视为 0 值 但 Intel 没有这样
  • 调试断言失败 OpenCv is_block_type_valid(header->_block_use)

    我是使用 Visual Studio 和 openCv 编程的新手 我编写了一个简单的程序来显示图像的红色通道 但每次运行代码时都会抛出 DEBUG ASSERTION FAILED 错误 include
  • jqGrid 复选框列

    我有一个相当复杂的网格 有两列格式化为复选框 这些列定义如下 name Alert A index Alert A width 22 align center sortable false formatter CheckBoxFormatt
  • 无法将简单的无符号字节 RGB 纹理映射到四边形:

    我有一个非常简单的程序 将虚拟红色纹理映射到四边形 下面是 C 中的纹理定义 struct DummyRGB8Texture2d uint8 t data 3 4 int width int height DummyRGB8Texture2
  • Spring Boot - 处理 JSON 或 HTML 的错误控制器

    我有一个春季启动应用程序 我有一个自定义错误控制器 它映射到使用ErrorPage映射 这些映射主要基于 HTTP 状态代码 并且通常只是适当地呈现 HTML 视图 例如我的映射 Configuration class ErrorConfi
  • 保存从 MS Access 2007 到 MS SQL Server 的 ODBC 连接的密码

    我负责将旧的 Access 2007 项目迁移到 MS SQL Server 2008 Express 第一阶段是将所有数据从 MS Access 数据库移动到 SQL Server 同时将 Access 表单和报告保留在客户端 因此 现在
  • 从中心生长[关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我一直在尝试让底部的圆圈在 Firefox 中增长 需要添加其他前缀 仍在开发中 他们表现得很好 但我的目标是让他们从中
  • Spring MVC形式:选择选定的值?

    有没有办法通过 Spring MVC 在下拉列表中选择当前值
  • Django 表单字段中的 JavaScript 函数调用

    我想创建一个带有复选框的表单 单击时 它们会打开单独的文本区域 供用户输入更多信息 如果我想使用 Django 动态创建的表单字段 有没有一种方法可以为每个复选框添加一个函数调用 您可以使用 JavaScript 动态添加事件处理程序 您可
  • C# - WPF - 不使用 System.Windows.Forms 获取文件夹浏览器对话框?

    我有这个WPFapp 我想有从用户那里获取目录路径的功能 我想使用一些文件夹浏览器对话框 但我don t想要实施它System Windows Forms或者在里面使用一些巨大的脚本 WPF 中是否有一些已经实现的获取对话框的路径 我在这里
  • 使用命令行工具构建时如何添加 .jar 文件依赖项?

    非常简单的问题 不使用Ants或Maven可以完成吗 我特指的是命令行工具 请注意 我不想创建 uberjar 我只是希望存档单元 知道 其外部依赖项在哪里 假设您正在谈论命令行调用javac 您所说的是 我可以提供库作为 javac 的参
  • Qt QFileDialog - 仅具有静态函数的本机对话框?

    我试图简单地保存一个文件 但是 我需要输入一个不带后缀的文件名来自动获取默认后缀 setDefaultSuffix 会这样做 我不想为此完全失去本机保存对话框 exec 没有从 QDialog 重载 因此它完全绕过本机钩子 忽略 DontU
  • 从 vueJS 方法调用 setTimeout() 不起作用

    我试图允许用户从应用程序重置或关闭给定服务器 我现在正在开发界面 并希望向用户提供有关正在发生的事情的消息 我显示数据对象中定义的消息来指示所采取的操作 我使用 setTimeout 来切换重置 消息和重置消息 请参阅以下方法 system
  • 命令键的 jQuery 键代码

    我读过了jQuery 事件按键 按下了哪个键 https stackoverflow com questions 302122 jquery event keypress which key was pressed and 如何使用 jqu
  • python3.8中的最终注释和装饰器

    由于 Python 3 8 即将发布 我只是想知道两者之间的区别最终装饰器和最终注释 在 Python 3 8 中 Python 类型提示功能 体现为typing module https docs python org 3 library
  • Vim:如何滚动绑定光标线?

    Vim 的分割窗口视图中的两个窗口可以相互绑定滚动通过设置 set scrollbind对于他们俩来说 完成此操作后 如果我在一个窗口中向下滚动光标 其他窗口也会随之向下滚动 但是 两个窗口中的光标并未相互绑定 我用过 set cursor
  • DdlGenerator 构造函数不需要参数?

    我想对我的数据库操作进行单元测试 我发现这段代码 https gist github com nboire 2819920 但是 我收到以下错误 CityGame test info Compiling 2 Java sources to
  • 当设备令牌过期时,是否会自动从 FCM 设备组中删除? [复制]

    这个问题在这里已经有答案了 我对 Firebase Cloud Messaging 还很陌生 而且我还没有能够得到这个问题的满意答案 另外 抱歉 所有的全部停止 不幸的是我在 2017 年买了一台 MacBook 苹果决定用它的键盘进行实验
  • 如何将 dict 转换为 unicode JSON 字符串?

    使用标准库对我来说似乎不可能json模块 使用时json dumps它会自动转义所有非 ASCII 字符 然后将字符串编码为 ASCII 我可以指定它不转义非 ASCII 字符 但是当它尝试将输出转换为 ASCII 时它会崩溃 问题是 我不
  • 基于其他阵列形状的零填充阵列

    我有 K 个特征向量 它们都共享维度 n 但具有可变维度 m n x m 他们都生活在一个列表中 to be padded to be padded append np reshape np arange 9 3 3 array 0 1 2