标签: transpose

转置/解压缩功能(zip的反转)?

我有一个2项元组的列表,我想将它们转换为2个列表,其中第一个包含每个元组中的第一个项目,第二个列表包含第二个项目.

例如:

original = [('a', 1), ('b', 2), ('c', 3), ('d', 4)]
# and I want to become...
result = (['a', 'b', 'c', 'd'], [1, 2, 3, 4])
Run Code Online (Sandbox Code Playgroud)

是否有内置函数可以做到这一点?

python transpose list matrix

480
推荐指数
6
解决办法
15万
查看次数

转置列表清单

让我们来:

l = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
Run Code Online (Sandbox Code Playgroud)

我正在寻找的结果是

r = [[1, 4, 7], [2, 5, 8], [3, 6, 9]]
Run Code Online (Sandbox Code Playgroud)

并不是

r = [(1, 4, 7), (2, 5, 8), (3, 6, 9)]
Run Code Online (Sandbox Code Playgroud)

非常感激

python transpose list

200
推荐指数
6
解决办法
18万
查看次数

Javascript相当于Python的zip函数

有没有相当于Python的zip函数的javascript?也就是说,给定多个相等长度的数组会创建一对数组.

例如,如果我有三个如下所示的数组:

var array1 = [1, 2, 3];
var array2 = ['a','b','c'];
var array3 = [4, 5, 6];
Run Code Online (Sandbox Code Playgroud)

输出数组应该是:

var output array:[[1,'a',4], [2,'b',5], [3,'c',6]]
Run Code Online (Sandbox Code Playgroud)

javascript python transpose functional-programming

191
推荐指数
8
解决办法
6万
查看次数

转置NumPy数组

我使用Python和NumPy并且在"转置"方面存在一些问题:

import numpy as np
a = np.array([5,4])
print(a)
print(a.T)
Run Code Online (Sandbox Code Playgroud)

调用a.T不是转置数组.如果a是例如[[],[]]然后它正确转置,但我需要转置[...,...,...].

python transpose numpy

166
推荐指数
7
解决办法
33万
查看次数

在JavaScript中转置2D数组

我有一个数组数组,如:

[
    [1,2,3],
    [1,2,3],
    [1,2,3],
]
Run Code Online (Sandbox Code Playgroud)

我想转置它以获得以下数组:

[
    [1,1,1],
    [2,2,2],
    [3,3,3],
]
Run Code Online (Sandbox Code Playgroud)

使用循环以编程方式执行此操作并不困难:

function transposeArray(array, arrayLength){
    var newArray = [];
    for(var i = 0; i < array.length; i++){
        newArray.push([]);
    };

    for(var i = 0; i < array.length; i++){
        for(var j = 0; j < arrayLength; j++){
            newArray[j].push(array[i][j]);
        };
    };

    return newArray;
}
Run Code Online (Sandbox Code Playgroud)

然而,这看起来很笨重,我觉得应该有一种更简单的方法.在那儿?

javascript arrays transpose matrix

135
推荐指数
10
解决办法
7万
查看次数

一种在Bash中转置文件的有效方法

我有一个巨大的制表符分隔文件格式如下

X column1 column2 column3
row1 0 1 2
row2 3 4 5
row3 6 7 8
row4 9 10 11
Run Code Online (Sandbox Code Playgroud)

我想仅使用bash命令以有效的方式转置它(我可以编写十个左右的Perl脚本来执行此操作,但执行速度应该比本机bash函数慢).所以输出应该是这样的

X row1 row2 row3 row4
column1 0 3 6 9
column2 1 4 7 10
column3 2 5 8 11
Run Code Online (Sandbox Code Playgroud)

我想到了这样的解决方案

cols=`head -n 1 input | wc -w`
for (( i=1; i <= $cols; i++))
do cut -f $i input | tr $'\n' $'\t' | sed -e "s/\t$/\n/g" >> output
done
Run Code Online (Sandbox Code Playgroud)

但它很慢,似乎不是最有效的解决方案.我在这篇文章中看到了vi的解决方案,但它仍然过慢.有什么想法/建议/精彩的想法吗?:-)

unix bash parsing transpose

105
推荐指数
12
解决办法
11万
查看次数

在C++中转置矩阵的最快方法是什么?

我有一个矩阵(相对较大),我需要转置.例如假设我的矩阵是

a b c d e f
g h i j k l
m n o p q r 
Run Code Online (Sandbox Code Playgroud)

我希望结果如下:

a g m
b h n
c I o
d j p
e k q
f l r
Run Code Online (Sandbox Code Playgroud)

最快的方法是什么?

c++ algorithm transpose matrix

75
推荐指数
3
解决办法
9万
查看次数

NumPy的transpose()方法如何置换数组的轴?

In [28]: arr = np.arange(16).reshape((2, 2, 4))

In [29]: arr
Out[29]: 
array([[[ 0,  1,  2,  3],
        [ 4,  5,  6,  7]],

       [[ 8,  9, 10, 11],
        [12, 13, 14, 15]]])


In [32]: arr.transpose((1, 0, 2))
Out[32]: 
array([[[ 0,  1,  2,  3],
        [ 8,  9, 10, 11]],

       [[ 4,  5,  6,  7],
        [12, 13, 14, 15]]])
Run Code Online (Sandbox Code Playgroud)

当我们将一个整数元组传递给transpose()函数时,会发生什么?

具体来说,这是一个3D数组:当我传递轴的元组时,NumPy如何转换数组(1, 0 ,2)?你能解释一下这些整数所指的行或列吗?在NumPy的背景下,轴数是多少?

python arrays transpose numpy

56
推荐指数
3
解决办法
3万
查看次数

Postgres - 将行转置为列

我有下表,它为每个用户提供了多个电子邮件地址.

在此输入图像描述

我需要将其展平为用户查询的列.根据创建日期向我提供"最新"3个电子邮件地址.

user.name | user.id | email1          | email2           | email3**

Mary      | 123     | mary@gmail.com  | mary@yahoo.co.uk | mary@test.com

Joe       | 345     | joe@gmail.com   | [NULL]           | [NULL]
Run Code Online (Sandbox Code Playgroud)

sql database postgresql transpose crosstab

38
推荐指数
2
解决办法
9万
查看次数

使用Spark将列转换为行

我正在尝试将我的表的某些列转换为行.我正在使用Python和Spark 1.5.0.这是我的初始表:

+-----+-----+-----+-------+
|  A  |col_1|col_2|col_...|
+-----+-------------------+
|  1  |  0.0|  0.6|  ...  |
|  2  |  0.6|  0.7|  ...  |
|  3  |  0.5|  0.9|  ...  |
|  ...|  ...|  ...|  ...  |
Run Code Online (Sandbox Code Playgroud)

我想有这样的事情:

+-----+--------+-----------+
|  A  | col_id | col_value |
+-----+--------+-----------+
|  1  |   col_1|        0.0|
|  1  |   col_2|        0.6|   
|  ...|     ...|        ...|    
|  2  |   col_1|        0.6|
|  2  |   col_2|        0.7| 
|  ...|     ...|        ...|  
|  3  |   col_1|        0.5|
|  3  | …
Run Code Online (Sandbox Code Playgroud)

python transpose pivot apache-spark

26
推荐指数
4
解决办法
3万
查看次数