我想生成一個代碼,該代碼將從兩個不同的資料幀中的每一個寫入 20 行。因此,我創建了如下所示的內容。除了嵌套回圈(u)每次都從 0 開始外,一切正常。你能幫我解決它,從它離開的地方開始嗎?
for t, row in results_table1.iterrows():
f.write(" & ".join([str(x) for x in row.values]) " \\\\\n")
if t > 0 and t % 20 == 0:
for u, row in results_table2.iterrows():
f.write(" & ".join([str(x) for x in row.values]) " \\\\\n")
if u > 0 and u % 20 == 0:
break
uj5u.com熱心網友回復:
你想在兩張桌子之間交替嗎?然后我將通過索引訪問內容:
for t in range(20):
f.write(" & ".join([str(x) for x in results_table1.iloc[t].values]) " \\\\\n")
f.write(" & ".join([str(x) for x in results_table2.iloc[t].values]) " \\\\\n")
編輯:從表 1 中獲取第 0-19 行,然后從表 2 中獲取 0-19,然后從表一中獲取 20-39 等:
(基于im_vutu 的答案,但確保復制所有行,即使總數不能被 20 整除)
u = 0
for t, row in results_table1.iterrows():
f.write(" & ".join([str(x) for x in row.values]) " \\\\\n")
if t > 0 and t % 20 == 0 or t == len(results_table1.index)-1:
for i in range(0,20):
try:
f.write(" & ".join([str(x) for x in results_table2.iloc[u]]) " \\\\\n")
u = 1
except KeyError:
break
uj5u.com熱心網友回復:
您可以在回圈增量 u 之外初始化 u 并用作第二個資料幀的索引。
u = 0
for t, row in results_table1.iterrows():
f.write(" & ".join([str(x) for x in row.values]) " \\\\\n")
if t > 0 and t % 20 == 0:
for i in range(0,20):
try:
f.write(" & ".join([str(x) for x in results_table2.iloc[u]]) " \\\\\n")
u = 1
except:
pass
f.close()
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/473813.html
