Numpy Vector (N,1) 维度 -> (N,) 维度转换

2024-01-06

我有一个关于 (N,) 维数组和 (N,1) 维数组之间转换的问题。例如,y 是 (2,) 维。

A=np.array([[1,2],[3,4]])

x=np.array([1,2])

y=np.dot(A,x)

y.shape
Out[6]: (2,)

但下面将显示 y2 为 (2,1) 维度。

x2=x[:,np.newaxis]

y2=np.dot(A,x2)

y2.shape
Out[14]: (2, 1)

在不复制的情况下将 y2 转换回 y 的最有效方法是什么?

谢谢, 汤姆


reshape http://docs.scipy.org/doc/numpy/reference/generated/numpy.reshape.html为此工作

a  = np.arange(3)        # a.shape  = (3,)
b  = a.reshape((3,1))    # b.shape  = (3,1)
b2 = a.reshape((-1,1))   # b2.shape = (3,1)
c  = b.reshape((3,))     # c.shape  = (3,)
c2 = b.reshape((-1,))    # c2.shape = (3,)

还请注意reshape除非需要新形状,否则不会复制数据(此处不需要这样做):

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

Numpy Vector (N,1) 维度 -> (N,) 维度转换 的相关文章

随机推荐

  • DocumentFilter:为什么调用replace()而不是insertString()?

    我已经实现了DocumentFilter子类 当我在JTextComponent the replace 过滤器的方法被调用 而不是insertString 从未被调用 知道为什么吗 The insertString 当您使用 Docume
  • 如何定义 Android 上 SyncAdapter 更新的频率?

    为同步定义的 ContentProvided 是虚拟的 根据这种方法 https stackoverflow com questions 4649808 syncadapter without a contentprovider 46505
  • 警告:使用“未知”终端进行绘图。不会生成任何输出。请选择带有“设置终端”的终端

    我正在学习斯坦福大学 Andrew Wu 教授的精彩机器学习课程 当我在 ex5 文件中执行绘图函数时 octave cli 命令行报告以下警告 set terminal aqua enhanced title Figure 1 size
  • Linq To Xml Null 属性检查

  • CircleCI DynamoDB 本地

    我正在尝试对其进行设置 以便 CircleCI 可以在我的测试中使用 DynamoDB Local 我看见this https discuss circleci com t how to install dynamodb local 201
  • 将 XML 批量导入 SQL Server

    我在 Microsoft com 上查看了这些示例 http support microsoft com kb 316005 http support microsoft com kb 316005 http msdn microsoft
  • 撤消 git pull 后,git pull 显示“已经是最新的”

    我刚刚在 magento 中安装了一个新的扩展 并已提交并推送 它位于 github 的暂存分支上 我已使用它将其拉到我的临时服务器上 git pull origin staging 它刚刚破坏了我的网站 我需要把它恢复回来 我做到了 gi
  • React - 复选框全选

    我有一个项目列表 每个项目都有自己的复选框 我决定尝试添加一个 全选 复选框 以便用户更轻松地一次选择所有项目 不幸的是 我发现很难以 React 的方式弄清楚逻辑 我找到了一个 JSBIN 来说明我希望渲染结果如何工作 https jsb
  • 无法让 Atom Linter 工作

    我是 Atom 的新手 文本编辑 我安装了许多软件包 包括 Linter https github com AtomLinter Linter https github com AtomLinter Linter 但它没有显示错误或突出显示
  • 在 C# 中的页面之间传递复杂对象

    我正在使用此代码在我的 Windows 8 应用程序中传递值 以下代码在单击项目时将数据传递到页面 因此它将扇区 ID 传递到测验页面 private void quizbtn Click object sender RoutedEvent
  • 如何不序列化 POJO 中初始化的值?

    如果我有一个 POJO class Night int stars 10 getter and setter for stars 我和杰克逊一起序列化它 它将序列化stars场地 但是因为该字段是在创建对象时设置的 所以不需要序列化该字段
  • 使用 AltBeacon 格式在广告时添加自定义数据

    我正在学习 Android 应用程序开发 同时构建一个与物理网络交互的应用程序 我想基于 AltBeacon 规范进行广告并以以下形式添加小负载string or bytes 我碰到信标生成器 https altbeacon github
  • 未使用的导入和对象会对性能产生影响吗?

    Java 代码中未使用的导入和未使用的对象是否会对性能产生任何影响 假设一个对象被初始化但从未使用过 会发生什么 未使用的进口产品的成本是多少 这是一个非常常见的问题 与大多数性能问题一样 最好的方法是尽可能编写最清晰 最简单的代码 因为这
  • Java 12 intellij switch 表达式不起作用

    我尝试在 IntelliJ 中使用 Java 12 但是当我尝试运行我的应用程序时出现错误 Error 57 32 java switch expressions are a preview feature and are disabled
  • Clojure 中 ~' 或 '~ 的用途是什么?

    我正在学习 Clojure 宏 代码示例有时会有以下结构 symbol或者交替地 symbol 我知道 quote and 防止对表单进行求值 并且反引号还添加了命名空间限定 并且 导致对引用的表单进行求值 我的问题是 为什么停止然后开始评
  • gradle:Android Studio继承buildtype

    我在 gradle Android Studio 中有 4 种构建类型 android buildTypes release debug kindle kindle debug 我知道 我的src文件夹可以为每种构建类型拥有一个文件夹 所以
  • Java 编译速度 vs Scala 编译速度

    我已经用 Scala 编程有一段时间了 我喜欢它 但令我恼火的一件事是编译程序所需的时间 这似乎是一件小事 但使用 Java 我可以对我的程序进行一些小更改 单击 netbeans 中的运行按钮 然后 BOOM 它正在运行 随着时间的推移
  • 迭代 std::list 时擦除

    如果我使用的是iterator in a for循环 我用erase在迭代器的当前迭代中 for 循环应该继续良好并访问其余的list元素 根据我的阅读 情况应该是这样 并且是一个主要的区别特征list vs deque or vector
  • 快速过滤元组数组

    我有一个命名元组数组 我想根据元组数组的元素值对此数组应用过滤器 typealias Section sectionName String sectionInputs Input var defaultSectionsData Sectio
  • Numpy Vector (N,1) 维度 -> (N,) 维度转换

    我有一个关于 N 维数组和 N 1 维数组之间转换的问题 例如 y 是 2 维 A np array 1 2 3 4 x np array 1 2 y np dot A x y shape Out 6 2 但下面将显示 y2 为 2 1 维