【发布时间】:2016-09-03 14:32:10
【问题描述】:
我有一个包含 10 个表的数据库:(date ,day ,month ,year ,pcp1 ,pcp2 ,pcp3 ,pcp4,pcp5 ,pcp6) 并且每列都有 41 年的数据集。日、月和年列是“Null”,因为我稍后会在导出 csv 文件中的表格后添加它们,我做了这部分,但格式不正确,因为每列必须分别分开。
这是我的数据库示例:
date day month year pcp1 pcp2 pcp3 pcp4 pcp5 pcp6
1.01.1979 0.431 2.167 9.375 9.375 0.431 9.375
2.01.1979 1.216 2.583 9.162 9.162 1.216 9.162
3.01.1979 4.041 9.373 23.169 23.169 4.041 23.169
4.01.1979 1.799 3.866 8.286 8.286 1.799 8.286
5.01.1979 0.003 0.051 0.342 0.342 0.003 0.342
6.01.1979 2.345 3.777 7.483 7.483 2.345 7.483
7.01.1979 0.017 0.031 0.173 0.173 0.017 0.173
我想得到上面的所有表格。但是,我得到了以下输出:
Column 1,Column 2,Ellipsis
1979-01-01,,,,0.431,2.167,9.375,9.375,0.431,9.375
1979-01-02,,,,1.216,2.583,9.162,9.162,1.216,9.162
1979-01-03,,,,4.041,9.373,23.169,23.169,4.041,23.169
1979-01-04,,,,1.799,3.866,8.286,8.286,1.799,8.286
1979-01-05,,,,0.003,0.051,0.342,0.342,0.003,0.342
有几个问题。首先没有标题,其次跳转另一行(1到3)而不是(1到2),最后所有数据都在column1下。
我的代码是:
import csv
import sqlite3
conn=sqlite3.connect("pcpnew6.db")
c=conn.cursor()
data = c.execute("SELECT * FROM pcp3")
with open('output.csv', 'w') as f:
writer = csv.writer(f)
writer.writerow(['Column 1', 'Column 2', ...])
writer.writerows(data)
【问题讨论】: