如何以矢量化方式查找特定轴上二维数组的唯一向量?

2024-01-30

我有一个形状数组(n,t)我想将其视为一个时间序列n-vectors.

我想知道独特的n-vector沿线存在的价值观t-dimension以及相关的t-indices对于每个独特的向量。我很乐意使用任何合理的平等定义(例如numpy.unique将采取浮动)

通过 Python 循环就可以轻松实现这一点t但我希望有一种矢量化方法。

在某些特殊情况下,可以通过折叠来完成n-vectors转换为标量(并使用numpy.unique在第 1d 结果上),例如如果你有布尔值,你可以使用向量化dot(2**k)向量将(布尔向量)转换为整数,但我正在寻找一个相当通用的解决方案。


如果数组的形状是 (t, n)——因此每个 n 向量的数据在内存中是连续的——您可以将二维数组的视图创建为一维结构化数组,然后使用numpy.unique 在此视图上。

如果您可以更改数组的存储约定,或者如果您不介意制作转置数组的副本,那么这可能适合您。

这是一个例子:

import numpy as np

# Demo data.
x = np.array([[1,2,3],
              [2,0,0],
              [1,2,3],
              [3,2,2],
              [2,0,0],
              [2,1,2],
              [3,2,1],
              [2,0,0]])

# View each row as a structure, with field names 'a', 'b' and 'c'.
dt = np.dtype([('a', x.dtype), ('b', x.dtype), ('c', x.dtype)])
y = x.view(dtype=dt).squeeze()

# Now np.unique can be used.  See the `unique` docstring for
# a description of the options.  You might not need `idx` or `inv`.
u, idx, inv = np.unique(y, return_index=True, return_inverse=True)

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

如何以矢量化方式查找特定轴上二维数组的唯一向量? 的相关文章

  • 如何在序列化器创建方法中获取 URL Id?

    我有以下网址 url r member P
  • Python模块可以访问英语词典,包括单词的定义[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个 python 模块 它可以帮助我从英语词典中获取单词的定义 当然有enchant 这可以帮助我检查该单词是否存在于英语中
  • Python逻辑运算符优先级[重复]

    这个问题在这里已经有答案了 哪个运算符优先4 gt 5 or 3 lt 4 and 9 gt 8 这会被评估为真还是假 我知道该声明3 gt 4 or 2 lt 3 and 9 gt 10 显然应该评估为 false 但我不太确定 pyth
  • 将数据帧行转换为字典

    我有像下面的示例数据这样的数据帧 我正在尝试将数据帧中的一行转换为类似于下面所需输出的字典 但是当我使用 to dict 时 我得到了索引和列值 有谁知道如何将行转换为像所需输出那样的字典 任何提示都非常感激 Sample data pri
  • Django 模型在模板中不可迭代

    我试图迭代模型以获取列表中的第一个图像 但它给了我错误 即模型不可迭代 以下是我的模型和模板的代码 我只需要获取与单个产品相关的列表中的第一个图像 模型 py class Product models Model title models
  • Pandas 中允许重复列

    我将一个大的 CSV 包含股票财务数据 文件分割成更小的块 CSV 文件的格式不同 像 Excel 数据透视表之类的东西 第一列的前几行包含一些标题 公司名称 ID 等在以下列中重复 因为一家公司有多个属性 而不是一家公司只有一栏 在前几行
  • 忽略 Mercurial hook 中的某些 Mercurial 命令

    我有一个像这样的善变钩子 hooks pretxncommit myhook python path to file myhook 代码如下所示 def myhook ui repo kwargs do some stuff 但在我的例子中
  • 如何创建一个语句来打印以特定单词开头的单词? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 如何在 python 中打印从特定字母开始的单词 而不使用函数 而是使用方法或循环 1 我有一个字符串 想要打印以 m 开头的单词 S
  • 切片 Dataframe 时出现 KeyError

    我的代码如下所示 d pd read csv Collector Output csv df pd DataFrame data d dfa df copy dfa dfa rename columns OBJECTID Object ID
  • Python urllib.request.urlopen:AttributeError:'bytes'对象没有属性'data'

    我正在使用 Python 3 并尝试连接到dstk 我收到错误urllib包裹 我对SO进行了很多研究 但找不到与这个问题类似的东西 api url self api base street2coordinates api body jso
  • 如何从Python中的字符串中提取变量名称和值

    我有一根绳子 data var1 id 12345 name John White python中有没有办法将var1提取为python变量 更具体地说 我对字典变量感兴趣 这样我就可以获得变量的值 id和name python 这是由提供
  • Seaborn Pairplot 图例不显示颜色

    我一直在学习如何在Python中使用seaborn和pairplot 这里的一切似乎都工作正常 但由于某种原因 图例不会显示相关的颜色 我无法找到解决方案 因此如果有人有任何建议 请告诉我 x sns pairplot stats2 hue
  • 创建嵌套字典单行

    您好 我有三个列表 我想使用一行创建一个三级嵌套字典 i e l1 a b l2 1 2 3 l3 d e 我想创建以下嵌套字典 nd a 1 d 0 e 0 2 d 0 e 0 3 d 0 e 0 b a 1 d 0 e 0 2 d 0
  • 使用 Firefox 绕过弹出窗口下载文件:Selenium Python

    我正在使用 selenium 和 python 来从中下载某些文件web page http www oceanenergyireland com testfacility corkharbour observations 我之前一直使用设
  • 使用yield 进行字典理解

    作为一个人为的例子 myset set a b c d mydict item yield join item s for item in myset and list mydict gives as cs bs ds a None b N
  • 默认情况下,Keras 自定义层参数是不可训练的吗?

    我在 Keras 中构建了一个简单的自定义层 并惊讶地发现参数默认情况下未设置为可训练 我可以通过显式设置可训练属性来使其工作 我无法通过查看文档或代码来解释为什么会这样 这是应该的样子还是我做错了什么导致默认情况下参数不可训练 代码 im
  • Tkinter - 浮动窗口 - 调整大小

    灵感来自this https stackoverflow com a 22424245 13629335问题 我想为我的根窗口编写自己的调整大小函数 但我刚刚注意到我的代码显示了一些性能问题 如果你快速调整它的大小 你会发现窗口没有像我希望
  • 迭代 my_dict.keys() 并修改字典中的值是否会使迭代器失效?

    我的例子是这样的 for my key in my dict keys my dict my key mutate 上述代码的行为是否已定义 假设my dict是一本字典并且mutate是一个改变其对象的方法 我担心的是 改变字典中的值可能
  • Ubuntu 上的 Python 2.7

    我是 Python 新手 正在 Linux 机器 Ubuntu 10 10 上工作 它正在运行 python 2 6 但我想运行 2 7 因为它有我想使用的功能 有人敦促我不要安装 2 7 并将其设置为我的默认 python 我的问题是 如
  • Scrapy Spider不存储状态(持久状态)

    您好 有一个基本的蜘蛛 可以运行以获取给定域上的所有链接 我想确保它保持其状态 以便它可以从离开的位置恢复 我已按照给定的网址进行操作http doc scrapy org en latest topics jobs html http d

随机推荐

  • 评估条件表达式

    我有一个场景 我将 if 条件作为字符串保存在数据库中 例如 String condition age gt 28 nationality US OR String condition age gt 28 现在 我想评估用户是否已输入条件句
  • 获取 Google App Engine 发布版本的来源

    我可以从 Google 下载 App Engine 源代码吗 Update Google appengine 现在允许您下载代码 文档在这里 http code google com appengine docs python tools
  • Django OneToOneField - 我应该把它放在哪个模型中?

    假设我们有以下模型 class A Model pass class B Model pass 那么以下之间没有区别 在模型A中 b OneToOneField B related name A name and 在模型 B 中 a One
  • Bitbucket:为什么我无法创建 master/x 分支

    这是在 SourceTree 中完成的 我正在尝试做一些分支 master dev master demo master live 但这不能被推动 例如 当我尝试推动时master demo to master demo然后它给出这个错误
  • Erlang套接字发送超时永远不会发生

    我正在 Erlang 中实现一个与手机客户端通信的 TCP 服务器 手机经常掉线 所以服务器必须能够检测到 因此 我希望服务器向客户端发送消息时设置超时 这样当超时发生时 连接将关闭 客户端将被标记为离线 我在服务器上使用了这个监听选项 c
  • 如何在Python中隐藏/删除继承类中的某些方法?

    I 想要隐藏一些公共方法继承期间class B from class A class A object def someMethodToHide pass def someMethodToShow pass class B A pass l
  • 自动从 DynamoDb 表中删除数据

    DynamoDB 中是否有生命保留期概念 我的意思是有什么办法可以让表中的数据在一段时间后被删除 就像我们可以在 S3 中设置一些保留期一样 Thanks DynamoDB 引入了生存时间 TTL 功能 当您想要删除记录时 您可以创建一个数
  • 将参数从批处理文件传递到 sqlplus 脚本

    我正在尝试获取一个包含我每天运行的一些脚本的用户名和密码的文件 我现在有几个脚本正在使用包含我的用户名和密码的批处理文件 我的密码批处理文件如下所示 参数文件 Rem Oracle Db set odbUsername myUserName
  • 在 Flask api 中编辑传入请求正文有效负载

    我希望使基于 Flask 的 API 对所有传入的有效负载不区分大小写 而不是必须将其应用于所有 api route 函数 我想将其应用于 app before request装饰器 这样对于所有带有 json 有效负载 POST 和 PU
  • 如何使用变量名访问对象的属性?

    这有效 psISE Options DebugBackgroundColor FFC86400 这不会 attribute DebugBackgroundColor psISE Options attribute FFC86400 错误 无
  • 如何使用 CSS 使两列居中?

    我试图在我的网站上居中放置两列 但存在一些问题 每次更改的结果都是左侧位置 参见picture http i46 tinypic com 5tov7 jpg 我究竟做错了什么 这是我的 CSS body background image u
  • JavaScript 中不区分大小写的正则表达式

    我想使用 JavaScript 从 URL 中提取查询字符串 并且想对查询字符串名称进行不区分大小写的比较 这是我正在做的事情 var results new RegExp name exec window location href if
  • 如何使用 Jackson 将一个 ObjectNode 作为子节点添加到另一个 ObjectNode 中?

    我有下面的 ObjectNode handlerObjectNode gt Info Brand BrandName TOP OF THE WORLD 我有另一个以下格式的 ObjectNode fieldObjects gt Descri
  • 按下按钮时如何隐藏/显示元素?

    我正在尝试学习如何使用 Eclipse IDE 开发 Android 我现在想做的是在按下按钮时使隐藏的 TableLayout 可见 但是 我不知道需要在按钮的 OnClick 属性中放入什么内容 另外 是否有任何在线教程可以帮助我学习如
  • 重新绘制自定义标签

    React Recharts 的自定义标签不适用于条形图 http jsfiddle net xpko4e7e http jsfiddle net xpko4e7e
  • 按键合并地图

    假设我有两张地图 val a Map 1 gt one 2 gt two 3 gt three val b Map 1 gt un 2 gt deux 3 gt trois 我想按键合并这些映射 应用一些函数来收集值 在这种特殊情况下 我想
  • 在休眠中加载百万行

    如果我想在休眠中获取百万行 它会如何工作 休眠会崩溃吗 我该如何优化它 通常您不会为此使用 hibernate 如果需要执行批量操作 请使用 sql 或 hibernate 包装器进行批量操作 加载数百万条记录不可能为您的应用程序带来良好的
  • __len__ 无法返回大数字

    下面的代码 class Container def len self return 10 100 c Container print len c returns OverflowError 无法将 int 放入索引大小的整数中 我读过这个问
  • DynamoDB 在本地计算机中创建表

    我已将 DynamoDB jar 下载到本地 Windows 计算机 并能够使用下面的命令启动服务 java jar DynamoDBLocal jar dbPath 我可以使用 localhost 8000 shell 访问 Web 控制
  • 如何以矢量化方式查找特定轴上二维数组的唯一向量?

    我有一个形状数组 n t 我想将其视为一个时间序列n vectors 我想知道独特的n vector沿线存在的价值观t dimension以及相关的t indices对于每个独特的向量 我很乐意使用任何合理的平等定义 例如numpy uni