首页 > 解决方案 > 通过堆叠到另一列来重塑 .csv 数据

问题描述

我有看起来像这样的原始数据

cp
-0.094391
-0.26169
-0.33073
-0.22134
-0.086641
-0.022418
0.026102
0.15488
0.31659
0.47564
0.62409
0.69289
0.66066
0.39925
-0.098799
-0.26515
-0.33076
-0.22232
-0.086641
-0.021011
0.02751
0.16129
0.31832
0.47096
0.61332
   .
   .
   .

我想通过将四个值放入下一列来堆叠所有值,如下所示。(我也想删除'cp'字母。)

-0.094391   -0.086641   0.31659    ....
-0.26169    -0.022418   0.47564    ....
-0.33073    0.026102    0.62409    ....
-0.22134    0.15488         0.69289    ....

如何使用import csvpython 模块重塑这些数据?

标签: pythondatabasecsv

解决方案


这应该可以解决问题。用您的文件路径替换文件路径以使其工作。

import csv

final_csv = [[] for i in range(4)]

with open("./test.csv") as myfile:
    rd = csv.reader(myfile)
    no_header_rd = list(rd)[1:]
    i = 0
    for row in no_header_rd:
        final_csv[i % 4].append(row[0])
        i += 1

with open("./output.csv", 'w') as myoutputfile:
    wr = csv.writer(myoutputfile)
    wr.writerows(final_csv)

推荐阅读