- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这个问题与How to split an array according to a condition in numpy?密切相关但我正在寻找一种更通用的方法来拆分给定未知数量索引的数组:
import numpy as np
a=np.arange(10,40).reshape(10,3)
b=np.array([[1],[1],[1],[2],[2],[3],[3],[4],[4],[5]])
c=np.hstack((b,a))
array([[ 1, 10, 11, 12],
[ 1, 13, 14, 15],
[ 1, 16, 17, 18],
[ 2, 19, 20, 21],
[ 2, 22, 23, 24],
[ 3, 25, 26, 27],
[ 3, 28, 29, 30],
[ 4, 31, 32, 33],
[ 4, 34, 35, 36],
[ 5, 37, 38, 39]])
我想根据第一列将其拆分为 1x2x2 数组,因此:
array([[[ 1, 10, 11, 12],
[ 1, 13, 14, 15],
[ 1, 16, 17, 18]],
[[ 2, 19, 20, 21],
[ 2, 22, 23, 24]],
[[ 3, 25, 26, 27],
[ 3, 28, 29, 30]],
[[ 4, 31, 32, 33],
[ 4, 34, 35, 36]],
[[ 5, 37, 38, 39]]])
我是 Python 新手,非常感谢您的帮助!
最佳答案
在纯 Python 中,您可以使用 itertools.groupby
来完成:
>>> from operator import itemgetter
>>> from itertools import groupby
>>> from pprint import pprint
>>> pprint ([list(g) for k, g in groupby(c, key=itemgetter(0))])
[[array([ 1, 10, 11, 12]), array([ 1, 13, 14, 15]), array([ 1, 16, 17, 18])],
[array([ 2, 19, 20, 21]), array([ 2, 22, 23, 24])],
[array([ 3, 25, 26, 27]), array([ 3, 28, 29, 30])],
[array([ 4, 31, 32, 33]), array([ 4, 34, 35, 36])],
[array([ 5, 37, 38, 39])]]
使用 NumPy
:
>>> e, inds = np.unique(c[:,0], return_index=True)
>>> np.split(c, inds)[1:]
[array([[ 1, 10, 11, 12],
[ 1, 13, 14, 15],
[ 1, 16, 17, 18]]),
array([[ 2, 19, 20, 21],
[ 2, 22, 23, 24]]),
array([[ 3, 25, 26, 27],
[ 3, 28, 29, 30]]),
array([[ 4, 31, 32, 33],
[ 4, 34, 35, 36]]),
array([[ 5, 37, 38, 39]])]
关于python - 在 Python/numpy 中,如何根据数组的第一列(索引)解开/拆分数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20338536/
是否可以在 Delphi 中解开这些名称?如果是这样,我从哪里可以获得更多信息? 在 dbrtl100.bpl 中找不到特定条目的错误消息示例我想知道它找不到哪个确切的函数(单元、类、名称、参数等)。
我是小白,如何从列表中删除引号和逗号?或者我如何“取消字符串”? 在不显示字典 (dic) 的情况下,我使用的代码如下所示: >>>import itertools >>>list(itertools
我正在学习构建器模式,到目前为止我了解到,它是用于初始化的常用模式的一个很好的替代方案: 伸缩构造函数模式 JavaBean 模式 问题是,我真的不喜欢从我的域模型中的对象中删除 getter 和 s
我有这段文字 "Welcome to my city. Hello my good friend" 使用 jQuery(或 javascript),我想解开所有 span 标签,只保留第一级,我的意思
在为大学撰写作业的过程中,我一直享受着学习新的 Haskell monad 的乐趣。耶!!! 我有一个可以很好地进行类型检查的函数: compile :: Prog -> State VarsStat
let myLabel:UILabel = UILabel(frame:CGRectMake(0, 0, 44, 44)) myLabel.text = "Primary"
是否有一个好的 npm 包可以删除在 NodeJS 服务器上运行的 html 字符串中不必要的嵌套标签(无浏览器 DOM)?我尝试过 sanitize-html,但似乎不可能做到这一点。 我收到用户发
我目前正在编写一些日志代码,这些代码应该——除其他外——打印有关调用函数的信息。这应该比较容易,标准C++有一个type_info类(class)。这包含 typeid 的类/函数/等的名称。但它被破
我有以下组件 const ListItem = ({ children, title = '' }) => { const [isActive, setIsActive] = useSta
我正在尝试取消在 python3 中 pickle 的对象。这在 python3 中有效,但在 python2 中无效。该问题可以重现到 pickle 协议(protocol) 0。示例代码: imp
这个问题的灵感来自 How to transform a flow chart into an implementation?它询问从代码中通过算法消除 goto 语句的方法。 answer this
当我的 child 执行 unwind segue 时,我的 Controller 的 viewDidAppear 被调用。 在这个方法中(只有这个方法,我需要知道它是否来自 unwind) 注意:
我用 C 编写了一个小程序来管理 SQLite3 中的书目数据库。到目前为止,这只是一个允许导入和导出 BibTeX 数据的命令行工具。为了使导出/导入功能更加可定制(例如,在导入时始终在日期字段中组
这个问题与How to split an array according to a condition in numpy?密切相关但我正在寻找一种更通用的方法来拆分给定未知数量索引的数组: impor
我是一名优秀的程序员,十分优秀!