用开放数据和 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!
- 成员?我们也是一个工人合作社——但那是另一个故事了!
