做数据处理要遵守的一些规则

  1. 不造锤子; 不论是FME还是Python,又或者是SQL。这些工具都很好用,在进行数据处理的时候,应当思考如何合理的使用他们。通过工具的组合,绝大多数问题都能得到解决。就像使用生活中的工具,单纯的使用一把锤子,是造不出汽车的。为了造出复杂的机械,需要的是合理的使用工具,在这过程中,可能需要使用到一些比锤子更加高级的机械等一系列工具。如果目的是造汽车,那么这些高级工具是怎么造出来的,就不是最该关注的点。造汽车的人,只需要使用好这些工具就好了。 不造锤子,并不意味着思想上的懈怠。相反的,不造锤子意味着作为一个数据处理人员要去了解各种工具,在了解的基础上思考如何对这些工具进行组合使用。只有集各家之长,才能在数据处理中做到游刃有余。像现在的我,拿FME来做日常的数据处理,Python偶尔打打辅助,ArcGIS作为日常数据处理中的最后杀手锏来搞定最后的工作。要用好这些工具,意味着对FME的几百个转换器要非常熟悉,对ArcGIS的上千个地理处理工具要做到基本的了解,Python也要写的顺溜,这样才能把它们联合起来使用。 但是通过一段时间的学习与了解,我发现SQL也可以用来做一些数据处理,但SQL虽然功能强大却没有FME的界面友好。SQL写的工具适合放在后台中,方便部署,响应快速。 无论使用什么,主要精力应该放在解决问题上,避免造锤子(轮子),尤其是重复的轮子!
  2. 保持清晰的思路 无论做什么事情,思路都是非常重要的。保持冷静的思考,是解决问题最重要的因素。 就数据处理而言,绝大多数时候,我们处理的都是小数据,与大数据相比,小数据的特点就是,杂乱、非结构化,甚至完全没有规则。针对这种数据,手动处理有时候是更好的选择。如果FME也好,Python也罢,这些工具适合的是大规模批量的数据处理与分析。打个矢量化的比方来说吧,如果选择用FME或者Python,用户输入点的坐标,然后经过处理生成矢量数据也不是不可以,但我们可以直接选择使用ArcGIS的交互式编辑来完成这这样的工作。 总之,选择合适的工具,节省自己的时间。让自己熟悉的工具各司其职!
  3. 单个工具尽量简单 刚学FME的时候,模板做的都比较简单,小小的,可能也就三五个转换器。慢慢的,随着对FME的了解,能用FME做的事情也是越来越多,模板动辄上百个转换器,再加上写模板的时候没有注释,排版乱七八糟……这样做的后果就是容易迷失在为了写模板而写模板中。所以,我觉得,无论写什么工具,FME或Python,都应该尽量的精简,一个模板或者函数/类中尽量少包含一些内容。对常用的功能进行剥离,写成自定义转换器或者是包。总之,模板或类应该体现出思路、尽量精简。尽量避免混乱的思路!按照金字塔原理中指出的那样,每个模板,不超过7个子功能模块,最好是3-5个小小的子模块。 总之,要尽量简单!简洁,就是美!

本文分享自微信公众号 - 数据处理与分析(Qing_master)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-05-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏儿童编程

一张图汇总Pygame基础知识点

近期总结了Python Pygame的基础知识点,分享给大家。 说明:图片较大,建议电脑端打开,下载后使用。否则可能看不清字迹。

17520
来自专栏测试游记

Django的用户表创建(四)

加入我们需要完成注册,那就需要把这三个字段username,password,email存入到数据库中 我们首先编写数据库相关的代码 因为Django框架功能齐...

21560
来自专栏Java开发

Vue配置marked链接添加target="_blank"

7810
来自专栏测试游记

Sweetest框架学习

https://github.com/tonglei100/sweetest.git

13350
来自专栏测试游记

爬虫练习_使用scrapy爬取淘宝

https://s.taobao.com/search?q=%E5%A5%B3%E8%A3%85+%E8%A3%99&imgfile=&js=1&stats_c...

33930
来自专栏测试游记

python基础-装饰器笔记

函数装饰器用于在源码中“标记”函数,以某种方式增加函数的行为。这是一项强大的功能,但是若想要掌握,必须理解闭包。

10240
来自专栏Python数据科学

18个Python高效编程技巧!

初识Python语言,觉得python满足了我上学时候对编程语言的所有要求。python语言的高效编程技巧让我们这些大学曾经苦逼学了四年c或者c++的人,兴奋的...

10520
来自专栏测试游记

Django的注册功能(五)

最简单的web开发在一定程度上,应该就是与数据库的各种交互。增删改查并将结果友好的展示到页面上。 在完成了用户表的设计之后,今天就需要完成数据的插入工作了。

8020
来自专栏Python数据科学

50个最有价值的数据可视化图表(推荐收藏)

本文总结了在数据分析和可视化中最有用的 50 个 Matplotlib 图表。这些图表列表允许您使用 python 的 matplotlib 和 seaborn...

15720
来自专栏测试游记

Django的配置(二)

打开主项目下的settings.py文件 首先找到TEMPLATES,该列表存放的是一些静态文件相关的内容。

7230

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励