[英]How can I align the column headers with the values in each column when importing a csv into docx as a table?
[英]How can I save my table with its column headers in csv?
我無法正確顯示我的表格。即 output 中缺少標題。 但是,如果我從 SQL 打印原件,它是可用的。 我不准確地理解 iterrows 是如何工作的,因為我認為正是在這一點上,標題丟失了。 有人能幫我解決這個問題,還是有其他出路。 Initially, I could do this with the SQL data being converted to csv and then I read the csv directly into reportlab to get the pdf. 但是,我不希望在我的目錄中有物理 csv 文件,這就是我決定從 SQL 中的數據庫調用數據的原因。
overall_summary = self.choose_class_combo.currentText()+" " + self.choose_term_combo.currentText() + " "+ self.choose_year_combo.currentText() + " for summary"
conn = sqlite3.connect('mydb.db')
cur = conn.cursor()
str_summary = pd.read_sql("SELECT * FROM '" + str(overall_summary) + "'", conn)
tdata = []
for index, row in str_summary.iterrows():
rowdata = []
BLANK=row[0]
A1 =row[1]
A2=row[2]
B3=row[3]
B4=row[4]
B5=row[5]
C6=row[6]
C7=row[7]
C8=row[8]
D9=row[9]
D0=row[10]
D1=row[11]
E2=row[12]
X=row[13]
Z = row[14]
TOTAL=row[15]
MEAN=row[16]
GRD=row[17]
rowdata.append(BLANK)
rowdata.append(A1)
rowdata.append(A2)
rowdata.append(B3)
rowdata.append(B4)
rowdata.append(B5)
rowdata.append(C6)
rowdata.append(C7)
rowdata.append(C8)
rowdata.append(D9)
rowdata.append(D0)
rowdata.append(D1)
rowdata.append(E2)
rowdata.append(X)
rowdata.append(Z)
rowdata.append(TOTAL)
rowdata.append(MEAN)
rowdata.append(GRD)
tdata.append(rowdata)
conn.commit()
conn.connect()
這就是 SQL 中的內容,這與我在 pdf 中想要的 output 相同。
SUBJ A A- B+ B B- C+ C C- D+ D D- E X Z TOTAL MEAN GRD
EAGLE 0 0 0 0 2 2 1 4 5 11 15 7 0 0 47 3.1064 D
HAWK 0 0 0 0 1 0 3 3 4 7 17 11 0 0 46 2.6739 D
TOTAL 0 0 0 0 3 2 4 7 9 18 32 18 0 0 93 2.8925 D
我用 iterrows 得到的 output 如下。
EAGLE 0 0 0 0 2 2 1 4 5 11 15 7 0 0 47 3.1064 D
HAWK 0 0 0 0 1 0 3 3 4 7 17 11 0 0 46 2.6739 D
TOTAL 0 0 0 0 3 2 4 7 9 18 32 18 0 0 93 2.8925 D
Pandas iterrows()
返回 pandas 系列的行。 其中行的索引是原始 dataframe 中的列。 在使用str_summary.columns.tolist()
開始 for 循環之前,您可以 append 將標頭轉換為tdata
。
或者,這可能有助於[str_summary.columns.tolist(),] + str_summary.values.tolist()
。 我們在這里所做的是提取 header 和值將它們轉換為列表並將它們添加在一起。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.