用開放資料和 Python 拯救世界
政策方面
雖然對於一些開發人員來說,開放資料似乎已經存在了很久,我們可能不需要再談論它了,但重要的是要記住為什麼開放資料是人們極力推動的東西。
當一個開放資料標準被建立和推廣時,思考其原因很重要——它試圖推動什麼改變?人們將如何利用這些資料做以前不能做的事情?
例如,開放合同資料標準公開了政府將服務和專案外包給私營公司的詳細資訊。它使資料可用,並努力幫助人們實際使用它。透過這樣做,目標是根除腐敗,向更多競標者開放流程,提高效率,併為政府節省資金。
在開放資料服務,我們致力於許多標準——例如,受益所有權資料標準公開了最終擁有、控制或受益於世界各地公司的人員的資料。隨著越來越多的國家試圖減少避稅,這些資料真的很有幫助。
這正是我們工作的一部分——我們與客戶合作,實現他們的政策目標,並確保他們制定的開放資料標準與他們的政策目標相符並在此基礎上發展。
這就是我們能夠宣稱我們的工作“拯救世界”的原因——當我們看到像烏克蘭的ProZorro使用開放合同資料來打擊腐敗併為他們的政府節省12億英鎊時,這真是太棒了。
Python方面
我們選擇Python作為我們的工具;從Jupyter與Google Colab筆記本中的分析到完整的Sphinx網站和電子表格。等等,電子表格?
是的——在開放資料領域待上一段時間,你很快就會發現人們喜歡他們的電子表格。雖然一些開發人員現在可能正在翻白眼,但重要的是要記住,對於一些人來說,電子表格是一個非常強大的工具,使他們能夠完成否則無法完成的優秀資料工作。
所以我們必須接受這一點,這導致我們釋出了一個Python工具作為開源——Flatten Tool。
Flatten Tool接受一個JSON資料檔案,並生成其內容的電子表格。當然,JSON資料檔案可能不是一個平面結構,可能包含列表中的列表等等——我們透過在Excel檔案中生成多個工作表或多個CSV檔案來處理這個問題。
Flatten Tool還可以接受一組電子表格並生成您的資料的JSON檔案。如果您有一個描述您的標準的JSON Schema檔案,那會有所幫助。最後,我們還可以接受一個JSON Schema檔案並生成一組電子表格模板。
這使得人們可以輕鬆地使用他們最喜歡的工具——電子表格——並且我們仍然可以輕鬆地處理資料,無論是向他們傳送資料還是處理他們的資料。
多虧了Python的PyPi和pip,我們將其作為庫包含在我們做的其他專案中。我們為我們工作的資料標準制作網站,人們可以在這些網站上上傳一些資料——以其官方JSON標準形式,或作為電子表格——我們將獲取資料,分析它並突出資料中的問題和統計資料。我們還提供轉換——所以你可以上傳一個電子表格,如果它良好,你可以下載一個正確格式的JSON檔案。
感謝Python!
在開放資料服務,我們的一些成員*是開發人員,一些是分析師——但即使是我們的分析師也非常技術化,能夠與我們的開發人員一起深入研究問題的細節。我們不懷疑友好的Python語言和生態系統對此有所幫助——感謝Python!
- 成員?我們也是一個工人合作社——但那是另一個故事了!
