2017-06-14 30 views
0

我試圖在一個xlsx文件中將每個國家的數據寫在與該國家名字相同的每張表上。我在r中使用xlsx包。 我試圖使用write.xlsx通過for循環在一個文件中寫入不同數據在一個文件中

for (i in 1:noctry) { 
    write.xlsx(tab110rev[i,,], file="table.xlsx", sheetName = countrylist[i], 
       col.names=FALSE, row.names=FALSE) 
} 

noctry代表的國家的數量和它的53
countrylist是國家與作爲數字國家代碼列表。
tab110rev是具有的array(value, c(country, industry, year))

結構與此問題是,它僅產生一個xlsx文件與包含最後一個國家只有一個片陣列。應該有53張,而不只是一張。 我認爲for-loop覆蓋,而不是累計結果,但我不知道解決這個問題。

回答

2

我猜append = T應該解決您的問題。 試試這個:

for (i in 1:noctry) { 
    write.xlsx(tab110rev[i,,], file="table.xlsx", sheetName = countrylist[i], 
       col.names=FALSE, row.names=FALSE, append = T) 
} 
+0

你是我的英雄......非常感謝! – kim1298

+0

@ kim1298沒問題,人們在這裏互相幫助。你可以通過點擊'接受'來標記你喜歡的答案,以便其他人知道問題已經解決。 –

相關問題