我有一個csv文件中的數據,需要將特定單元格的內容放入其他文件中。這裏是csv文件的簡化版本。使用python將數據表單特定的csv單元格寫入另一個文件
A;B;C;D
A1;B1;C1;D1
A2;B2;C2;D2
A3;B3;C3;D3
A4;B4;C4;D4
csv文件應該轉換成一個二維數組,最好用numpy。之後,數組中的數據應寫入其他文件中。這是簡化代碼的一個片段。
import numpy
table = numpy.genfromtxt('table.csv', delimiter=';', skip_header=1)
for row in range (4):
output = open('array %s.txt' %(row+1), 'w')
for clmn in range (4):
output.write('%s' %table[row][clmn])
output.close()
我一直在尋找一種正確的方式將數據放入數組中。任何想法如何實現,或者你發現我犯了什麼錯誤?
編輯:我發現了這個問題。 numpy
未正確安裝。 我也不得不對代碼進行一些調整。
import numpy
#get table size
table = numpy.genfromtxt('table.csv', delimiter=';')
rows, cols = table.shape
#get table data
table = numpy.recfromtxt('table.csv', delimiter=';', dtype=str)
#write table in different files
for row in range(rows):
output = open('array %s.txt' %row, 'w')
for clmn in range(cols):
output.write('%s\t' %table[row][clmn])
output.close()
這是新的代碼和它輸出的文件如預期
陣列0.txt A B C D
陣列的1.txt A1 B1 C1 D1
陣列2.txt A2 B2 C2 D2
array 3.txt A3 B3 C3 D3
array 4.txt A4 B4 C4 D4
你想在檔案中獲得什麼格式? – eyllanesc
這段代碼有什麼問題? btw'output.close()'應該在循環內部 –
檔案將包含來自某些文本之間的表格的數據。但這與我的問題無關,因爲這不是問題。 問題是,由於輸出文件沒有創建,因此必須存在錯誤。 –