我正在尝试编写一个模块,使用itertools.product组合可变数量的列表.
我能得到的最接近的是:
import itertools
lists = [["item1","item2"],["A","b","C"], ["etc..."]]
searchterms = list(itertools.product(lists))
print searchterms
Run Code Online (Sandbox Code Playgroud)
这不起作用,因为列表是单个列表,因此它只返回原始序列.但我无法弄清楚如何将lists变量的每个元素传递给itertools.
谢谢你的任何建议.
在Octave我试图以以下格式解压缩矢量:
y = [ 1
2
4
1
3 ]
Run Code Online (Sandbox Code Playgroud)
我想返回一个维度矩阵(rows(y)x max value(y)),其中对于每一行,我在原始数字值的列中有一个1,在其他地方有一个零,即上面的例子
y01 = [ 1 0 0 0
0 1 0 0
0 0 0 1
1 0 0 0
0 0 1 0 ]
Run Code Online (Sandbox Code Playgroud)
到目前为止我有
y01 = zeros( m, num_labels );
for i = 1:m
for j = 1:num_labels
y01(i,j) = (y(i) == j);
end
end
Run Code Online (Sandbox Code Playgroud)
哪个有效,但是对于更大的矩阵来说会变得缓慢,并且看起来效率低下,因为即使大多数没有变化,它也会循环遍历每一个值.
我在另一个线程上为R找到了这个:
f3 <- function(vec) {
U <- sort(unique(vec))
M <- matrix(0, nrow = length(vec),
ncol = length(U),
dimnames …
Run Code Online (Sandbox Code Playgroud)