Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将多列合并到矩阵python中_Python_Csv_Merge_Zip_Data Processing - Fatal编程技术网

将多列合并到矩阵python中

将多列合并到矩阵python中,python,csv,merge,zip,data-processing,Python,Csv,Merge,Zip,Data Processing,我在python中有几个专栏,我最终尝试合并它们。现在我正在使用zip函数,但是在合并列之后,我将它们输出为CSV,并且格式很糟糕(zip在添加新列时将列合并,而不是将列分开)。以下是一个例子: col1 = [text1, text2, text3, etc] col2 = [str1, str2, str3, etc.] col3 = [num1, num2, num3, etc.] 我希望他们像这样结合起来: [[text1, str1, num1], [text2, str2, nu

我在python中有几个专栏,我最终尝试合并它们。现在我正在使用zip函数,但是在合并列之后,我将它们输出为CSV,并且格式很糟糕(zip在添加新列时将列合并,而不是将列分开)。以下是一个例子:

col1 = [text1, text2, text3, etc]
col2 = [str1, str2, str3, etc.]
col3 = [num1, num2, num3, etc.]
我希望他们像这样结合起来:

[[text1, str1, num1],
 [text2, str2, num2],
 [text3, str3, num3]]
从那里,我将能够输出矩阵作为一个csv的列都是独立的。现在看起来是这样的:

[[text1, str1, num1],
 [text2, str2, num2],
 [text3, str3, num3]]
我的代码

file_weights = similarity[0]
file_ranking = zip(filtered_and_cleaned, case_id)[1:]
file_ranking_2 = zip(file_ranking, file_weights)[1:]
输出

[[text1 str1, num1],
 [text2 str2, num2],
 [text3 str3, num3]]
我明白为什么我所做的不起作用,我只是不知道如何修复它。

一个指向列列表的指针就可以解决这个问题

col1 = [text1, text2, text3]
col2 = [str1, str2, str3]
col3 = [num1, num2, num3]
print zip(*[col1,col2,col3])
在Python中,3返回一个迭代器。因此,结果的
列表将给出所需的输出

就是

print list(zip(*[col1,col2,col3]))
输出格式如下!:

[[text1, str1, num1],
 [text2, str2, num2],
 [text3, str3, num3]]
希望能有帮助


快乐编码

我可能错了。但我猜,将您在此处共享的内容写入csv后的输出是错误的。如中所示,您已经给出了所需的列表,而不是所需的列表。这非常完美。非常感谢。如果你觉得有一个解决方案可以回答你的问题,那么就接受这个答案,这样将来在任何人遇到类似问题时,正确的解决方案可能就在眼前!