2012-12-23 58 views
-2

我是Python的新手,我有一個名爲full的ND numpy數組。它的結構是這樣的:INSERT Numpy ND數組到MySQL表

------------------- 
id | url | date 
------------------- 
1  url1 date1 
2  url2 date2 
3  url3 date3 

,並繼續(最多300行)。我想插入這個數組,因爲它是爲具有這些三列的MySQL數據庫表(即ID,網址,日期)。我聽說有一個Python的MySQLdb庫,通過它我可以做到這一點..但不知道如何使用它。請幫忙。

的陣列使用如下代碼構造:

with open("samples.txt") as f: 
    url = f.readlines() 
    f.close 
url = map(lambda s: s.strip(), url) 

import numpy 

url = numpy.array(url) #url array 1D 

dates_array = numpy.loadtxt("m_dates.txt") #dates array 1D 

id_array = numpy.arange(0, (len(content)), 1) #ID array 1D 


full = numpy.vstack([id_array, content]) 
full = full.T 
+0

你試過了什麼? – tacaswell

+0

full是我正在使用的數組的名稱..我認爲這很明顯。道歉。 – khan

+0

我很抱歉爲此..我想要的是添加這個numpy數組,因爲它在數據庫表中有確切的列數。這個問題很明顯。在這裏,人們應該直觀地幫助對方,並幫助他們。......而不是挑剔他們並開始抨擊......這是你們中某些人的傲慢自大。我很抱歉發佈。 – khan

回答

1

從看你的編輯,它看​​起來像它應該有工作:

In [6]: full = np.vstack(([1,'a','b'],[2,'c','d'],[3,'e','f'])) 


In [7]: full 
Out[7]: 
array([['1', 'a', 'b'], 
     ['2', 'c', 'd'], 
     ['3', 'e', 'f']], 
     dtype='|S1') 


In [8]: for a,b,c in full: 
    ...: print a,b,c 
    ...: 
1 a b 
2 c d 
3 e f 

你只需要更換打印語句你想用什麼sql命令。

+0

這種方式工作..只需要迭代ND數組的每個維度。謝謝tcaswell .. :-) – khan