Press "Enter" to skip to content

如何将初级数据科学代码升级为高级数据科学代码

这四个技巧将让您的编码技能达到资深数据科学家的水平

Maria Teneva在Unsplash上的照片

您做到了。经过多年的努力,您被聘为初级数据科学家。在公司入职培训的前几周里,时间过得飞快,您都没有意识到已经过去了几年。您已经参与了无数的项目,无论是个人还是作为团队的一部分,您的解决方案都对公司产生了积极的影响。

但是现在,您已经准备好迎接下一个挑战了:成为一名资深的数据科学家。但是,怎样填补这个差距呢?资深数据科学家需要了解哪些内容?最重要的是:如何将您的初级数据科学代码转变为资深级别的数据科学代码?

幸运的是,这个最后一个问题是最容易回答的,也是通向成为资深数据科学家的最容易提高的技能。我列出了顶级的四个领域,让您的初级代码可以转变为任何公司都会提拔您为资深数据科学家的位置。关键是要掌握基本原则,放弃紊乱的代码,开始实施测试和质量保证技能,并学习如何优化您的代码。

掌握数据科学代码的基本原则

在您能够编写资深数据科学家级别的代码之前,您需要掌握编码的基本原则。

在您开始进行数据科学之旅时,仅仅编写正确运行的代码就是一个成就。现在,是时候开始掌握这些基本原则,以便当您的代码正常运行时,这不再成为一个惊喜。

这是您无法加速的一个技巧,只能通过花费时间来完成工作。在您作为初级数据科学家的前几年里,每天都会有机会去掌握数据科学代码的基本原则,从编程基础知识到算法、数据结构和设计模式。

此外,现在是时候通过学习其他编程语言(可能是您的公司使用的语言或者您自己有时间可以学习的语言)和其他可以提高您工作质量的技术(例如,用于组织您的项目的Notion,用于版本控制的Git,代码编辑器中的代码语法检查扩展等),来加深您的知识储备。其中一些语言和工具将会留下来,而其他一些则会提供有见地的教训,即使您再也不会使用它们,也将使您成为更好的数据科学家。

现在也是时候拓展您的能力,开始探索更深入的数据科学概念。例如,您可能处于更多的数据分析职位,需要解释过去事件的原因。然而,您的老板现在希望您转向更具预测性的领域,这需要您开始学习机器学习和人工智能。通过努力学习这些主题,将使您能够进入更高级和管理的角色,您可以开始将您的知识传授给像您一样刚开始的初级数据科学家。

注重编写干净、可维护和可读的代码

我经常在以前的文章中开玩笑说,数据科学家写的代码很糟糕。当您刚开始时,编写错综复杂的代码是很普遍的。这可能是您作为初级数据科学家工作的前几年可以容许的,但是随着您的经验增加,编写混乱的代码变得越来越不可接受。

作为资深数据科学家职位的理想候选人,您的一个优势是能够编写干净、可维护和可读的代码。这不仅使您易于合作和极其专业,而且还表明您可以将这些技巧传递给在您指导下的未来的初级数据科学家。

因此,要将您的初级代码升级为资深级别的代码,您需要始终专注于使您的代码在任何时候都保持干净、可维护和可读。

Python和R都有很好的最佳实践和样式指南,可以帮助您开始更专业地格式化您的代码。代码的干净、可维护性和可读性是一个数据科学家愉快的工作基石,这就是为什么这些标准应该铭刻在您的大脑中(或者至少在您的桌子上易于触及的显眼位置)。在提交最终版本或将代码发送给软件工程部门进行转换为生产就绪代码之前,应始终仔细考虑和审查最佳实践和样式。

这也意味着您应该遵循DRY编码原则(至少)和SOLID编码原则(更高级),以确保您编写的代码是最佳的。虽然如果您主要编写的是永远不会被其他人接触或仅在一小组内部机器上运行的代码,这些原则可能不相关,但如果您将来换工作或开始生产级别代码,成为这些原则的专家不是一个坏主意。

此外,在您的职业生涯的这个阶段,您应该是公司代码标准的光辉代表。您推送到代码库的每个代码提交都应该是您的行业或公司正在寻找的闪闪发光的示例,并且应该是可以打印并用于培训手册的内容。是的,这会花费您额外的时间,但是额外的思考将在公司内部晋升时产生回报。他们会寻找什么?一位始终编写干净,可维护和可读性强的代码的员工——而这应该是您!

这个快速简易的7步清单将帮助您为数据科学编写更好的Python代码

这个清单将帮助您编写干净且易于管理的Python代码

towardsdatascience.com

开发测试和QA技能

熟练掌握单元测试,集成测试和自动化测试框架是立即将您的代码提升到更高水平的好方法。虽然这些都是初级数据科学家应该了解的技能,但作为高级数据科学家,您应该熟练掌握这些技能。

测试和QA技能是您可以开始编写出优秀的代码,它按照设计工作并可以与其他代码片段一起工作的地方。之前,您可能只是将代码发送到软件工程部门,他们将为集成做好一切准备,现在您将像高级数据科学家一样编写代码,并必须确保您的代码正常运行并且可以集成到更大的代码库中。

虽然您的公司可能有特定的单元和集成测试要求您运行,但开始构建您自己的测试以确保您的代码正在按您的要求运行并且可以通过自己的质量保证,不失为一个好主意。自己的质量保证是成为更好的数据科学家的好方法,它允许您在编写代码时变得更加高效。

开发测试和QA技能是向公司展示您致力于提高自己的技能,并且关心您的工作质量和推送到生产环境的代码的好方法。这些都是使您成为高级数据科学家候选人的属性。

Python数据科学的单元测试

使用nose2和参数化测试及时捕捉错误

towardsdatascience.com

将性能优化置于重要地位

没有什么比在将代码提交到软件工程部门后走过去听到抱怨的声音更能激励人去学习如何优化代码了。这是每个数据科学家都应该经历的一次令人谦卑的经历。

学习代码优化不仅是为了维护与软件部门之间的良好工作关系,还为了让自己成为一位更加自信的数据科学家,可以在没有其他部门支持的情况下编写优秀的代码。能够第一次编写稳定优化的代码是成为高级数据科学家的重要一步。

学习缓存等主题(在为客户生成仪表板时可能不相关但是可能很有用的数据副本存储在主数据存储器前),时间复杂性(算法运行所需的时间量),数据库索引(可以加速数据库表中数据检索操作的结构)和查询优化(找出最佳方法来提高查询性能)是开始优化数据科学代码的好地方。

虽然并非所有上述主题都与所有类型的数据科学家工作相关,但它们都是保持在后袋中的好工具,无论是为了将来的工作还是为了那个一次性需要,你都可以立即开始解决问题,这是高级数据科学家的必备属性。

订阅以直接将我的故事发送到您的收件箱:故事订阅

请成为会员,通过我的推荐链接获取无限访问小猪AI(我将收到小额佣金,您不需要支付任何额外费用):小猪AI会员

通过捐赠支持我的写作,资助创建更多类似此故事的内容:捐赠

Leave a Reply

Your email address will not be published. Required fields are marked *