0
我需要帮助将这些示例从一行移到另一列。我知道我可以使用Microsoft Excel来做到这一点,但由于我将使用更大的文件(> 100万行),我想知道是否有使用Python的方法。如何使用Python转置不同数量的列的表?
input.csv
-0.02 | -120.38 | |
-0.01 | -120.38 | -120.1 |
-0.02 | -120.4 | |
-0.01 | -70.45 | |
0 | 10.34 | 3.4 | 3.4
0.1 | 20.21 | 90.45 |
0.2 | 90.45 | 110.3 |
什么我希望的是得到这样的结果
output.csv
-0.02 | -0.01 | -0.02 | -0.01 | 0 | 0.1 | 0.2
-120.38 | -120.38 | -120.4 | -70.45 | 10.34 | 20.21 | 90.45
| -120.1 | | | 3.4 | 90.45 | 110.3
| | | | 3.4 | |
但我得到的是这样的结果
-0.02 | -0.01 | -0.02 | -0.01 | 0 | 0.1 | 0.2
-120.38 | -120.38 | -120.4 | -70.45 | 10.34 | 20.21 | 90.45
它只打印ou前两行。
我使用这个脚本转表:
transpose.py
import csv
data = zip(*csv.reader(open("input.csv", "rb")))
csv.writer(open("output.csv", "wb")).writerows(data)
谢谢您的帮助。
顺便说一句,我跑你上面的代码,它似乎正常工作。你确定这不是一个问题,你使用什么程序查看输出? –
我认为我用来查看它的程序没有问题。我使用EMEditor查看它。不知怎的,它产生了这样的结果。我跑了你的答案,但它产生了一个错误: pandas.io.common.CParserError:错误标记数据。 C错误:预计在第2行的2个字段,看到3 – Fang