2013-07-17 51 views
0

這是一個策略問題。一般策略:Python中的數據/數組分析

我剛剛在VBA和SQL中完成了一個任務,我不知道如何在Python中執行,因爲我只是在學習,並且對Python的一般方法看起來很感興趣。我有三個表/矩陣/數組。

名稱和ID:

NID Start  End 
3  1/1/2012 1/1/2013 

我要回答的問題是:與國家免疫相關

OID Names  Date 
1a Amy, Cathy 3/1/2012 
2x Dana  3/1/2011 
4s Amy, Becky 3/1/2010 

日期範圍:

Name NID 
Amy 1 
Becky 2 
Cathy 3 
Dana 4 

對象與相關聯的名稱和日期是:對於最後一個矩陣中的每個NID,什麼OID是相關的(即名稱出現在對象和日期fal中ls是否在最終矩陣中給出該名稱的日期範圍內)?

這是一個廣泛的問題,但如果可能的話,會在python中執行這種任務會欣喜若狂。請注意,只有1個和多達1000個不同的名稱可以通過OID進行分配。

回答

3

爲什麼不把這些數據保存在SQL數據庫中? SQL很適合處理你想要執行的操作,看起來你已經熟悉它了。這樣做還具有可移植性的附加優勢,因此您可以在VBA和Python之間切換,而無需移植大量代碼。

對於MySQL我建議查看MySQLdb模塊。你可以看看這裏的official documentation,我建議看看this更方便用戶使用的教程。

如果你想做一些快速原型而不必設置MySQL服務器,你可以使用SQLite代替。在這種情況下,我會看 sqlite3模塊。

+0

[MySQLdb](http://sourceforge.net/projects/mysql-python/)已過時(2013年最新更新)。改爲使用[mysqlclient](https://github.com/PyMySQL/mysqlclient-python)。 – ostrokach