Python转置函数仅转置2行

Python转置函数仅转置2行,python,Python,我需要关于使用python将行转换为列的帮助 我使用此脚本转换csv文件: import csv data = zip(*csv.reader(open("lamp_headersimplified.csv", "rb"))) csv.writer(open("lamp1.csv", "wb")).writerows(data) 我使用一个大的.csv文件进行测试,该文件的行数大于5000行,每行的列数不同,但结果与我预期的不同 示例csv文件: a , 1 , 2 , 3 , b , 2

我需要关于使用python将行转换为列的帮助

我使用此脚本转换csv文件:

import csv

data = zip(*csv.reader(open("lamp_headersimplified.csv", "rb")))
csv.writer(open("lamp1.csv", "wb")).writerows(data)
我使用一个大的.csv文件进行测试,该文件的行数大于5000行,每行的列数不同,但结果与我预期的不同

示例csv文件:

a , 1 , 2 , 3 ,
b , 2 , 4 , 6 , 8
c , 3 , 6 ,   ,  
d , 4 ,
我得到的结果是:

a , b , c , d
1,  2 , 3 , 4
我想要的结果是:

a , b , c , d
1 , 2 , 3 , 4
2 , 4 , 6 
3 , 6 
    8
脚本中有什么我需要添加的吗?
谢谢您的帮助。

使用
pandas
您可以尝试以下方法:

import pandas as pd
df = pd.read_csv('lamp_headersimplified.csv', header=None)
df.transpose().to_csv('lamp1.csv', header = False, index=False)
通过您的输入,它会写入以下输出
csv

a,b,c,d 
1,2,3,4
2,4,6,
3,6, ,
 ,8, ,

谢谢你的建议,但我在尝试你的脚本时出错了。错误是
pandas.io.common.CParserError:标记数据时出错。C错误:第2行应该有126个字段,SAW298
噢,我想你的csv文件不是在所有行中都有相同数量的列(逗号)。例如,第一行可能有125个逗号,而第二行有297个逗号。你能保证所有行都有相同数量的字段吗(字段可以是空的,没关系)。相同数量的字段是什么意思?它的列数相同吗?我的csv文件没有相同数量的列。我的意思是,就像您提供的示例一样,以类似的方式,如果您的csv在每一行中至少包含相同数量的逗号(不需要显示列值),它将工作。如果你用类似excel的工具打开csv并将其保存回原样,我想它会以相同的结构保存。啊,是的……多亏了你的建议,我才使它工作起来。我重新保存csv文件,运行后没有错误。非常感谢你!