问题标签 [permute]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
32281 浏览

tensorflow - 如何在 TensorFlow 中交换张量轴?

我有一个 shape 张量(30, 116, 10),我想交换前两个维度,这样我就有一个 shape 张量(116, 30, 10)

我看到 numpy 作为这样的函数实现了 ( np.swapaxes),我在 tensorflow 中搜索了类似的东西,但我什么也没找到。

你有什么主意吗?

0 投票
1 回答
234 浏览

r - igraph permute() 方法错误

我想对图进行节点置换。请参阅下面我创建的测试图。当我使用 igraph R 库中的 permute() 方法时,新图形 permute() 不会发生任何变化。怎么了?

磷:

图 p - 原始图

p2:

图 p2 - p 的置换图

我希望置换图 (p2) 中的集团是gene6、gene5、gene4,而不是gene1、gene2 和gene3,就像原来的那样。

怎么了?


编辑:

根据下面的回答,这是正确的,我还有另一个担心。当我手动重新排列节点名称时,当我检查所有边是否相同,以及原始图与置换图的度数是否相同时,igraph 是否正确?

0 投票
2 回答
331 浏览

python - 在 Python 中使用排列进行广播

我知道transposeon anndarray旨在等同于 matlab 的permute功能,但是我有一个不能简单工作的特定用例。在matlab中,我有以下内容:

其中 A 是形状为 NxNxM 的 3D 张量,B 是形状为 NxNxMxPxP 的 5D 张量。上述函数旨在矢量化循环的克罗内克积。我假设 Matlab 为 A 和 B 添加了 2 个单例维度,这就是它能够重新排列它们的原因。我希望将此代码移植到 Python ,但我认为它没有添加这些额外维度的能力。. 我发现成功地添加了额外的维度,但是广播与 matlab 的bsxfun. 我已经尝试了明显的翻译(是的,我正在为这些ndarray's 和函数使用 numpy):

我收到以下错误:

我的第一个猜测是reshape在 A 和 B 上做一个添加那些单例维度?

我现在收到以下错误:

编辑:将我的问题修改为不是关于添加单例维度,而是更多关于在 python 中正确广播这个 matlab 乘法。

0 投票
1 回答
1683 浏览

java - 二维数组的所有可能排列

昨天我问了一个似乎重复的问题,这个问题,但是,我很确定不是重复的,因为这个问题稍微高级一点。标题并没有解释所有内容,所以请继续阅读。

让我们假设我们有一个像这样的二维数组:

现在,假设我们想遍历它的所有可能排列:

等等……

由于这增加了一个级别,它严重混淆了我的想法。我们知道内部数组的长度总是两个,这永远不会改变。那是:

使用 Java 获取 2D 数组的所有可能排列的最佳方法是什么?

谢谢,

0 投票
0 回答
156 浏览

r - 如何实现 Aly 的置换检验以比较 R 中的方差?

下面的摘录来自“假设的置换、参数和引导测试”,第三版。菲利普·古德(第 58-61 页),第 3.7.2 节。

我试图在 R 中实现这个排列测试(见下文)来比较两个方差。我现在正在考虑如何计算 p 值,以及测试是否允许不同的替代假设(更大、更少、两侧),我不确定如何进行。

您能否对此有所了解,并可能对代码提出一些批评?非常感谢!

在此处输入图像描述

0 投票
2 回答
80 浏览

c - storing the permuted strings into an array

I have been trying to store the permuted strings from the following function into an array. I am getting the following error,

I want to be able to store all the permuted string and retrieve them one by one.

0 投票
1 回答
44 浏览

matlab - Matlab中的置换向量

我在这里浏览了答案,但没有成功。我有以下类型的代码:

我想对其进行更改,以便可以将其用于比此处的矩阵长得多的向量,因此我想以更一般的形式编写它。(换句话说,我希望能够从向量中的任何值开始,一直到向量的末尾,然后再从开始直到值。)

0 投票
2 回答
289 浏览

arrays - 置换和重塑多维数组的替代较短方法

我有以下多维数组:

最终结果如下所示:

为了获得数组 e,我做了以下操作:

是否有更清洁或更优雅的方式来实现相同的结果?

0 投票
1 回答
397 浏览

r - 如何在 R 中生成分层排列

我想以与输入向量相同的频率生成不同的可能排列。例如,我想使用x下面示例中的向量生成排列。

它给出了以下输出。

A但是,我只想要B频率分别为 2 和 1 的排列。预期的输出是:

R中有任何可用的功能吗?

注意:我不想对输出进行后处理以获得预期的输出,因为我的原始输入包含 300 个元素。不建议生成factorial(300)排列数。

更新:建议的链接提供了一个更快的解决方案,但是当输入向量加倍时失败(例如:)length=20并显示错误消息:

矩阵中的错误(NA,nrow = N,ncol = prod(sapply(foo,ncol))):
无效的“ncol”值(太大或 NA)

0 投票
0 回答
315 浏览

matlab - 如何在matlab中对ND数组进行转置?

我正在使用以下代码来获取矩阵行的所有可能组合。

现在我想对 out 变量进行转置,我正在使用这段代码。

我正面临这个错误......!

“未定义在 ND 阵列上使用“转置”时出错。请改用 PERMUTE。”

  1. 你能解决这个问题吗?

  2. 还有一件事,一个函数可以给我们多个输出,比如所有可能的输出组合?如果我放置';',就像上面的代码一样 在 out 变量语句之后,此函数将不会显示任何内容:/。