本文转载自公众号“读芯术”(ID:AI_Discovery)。
在数据科学的实际应用中,编程的重要性要远远高于数学。为什么这么说呢?原因在于,当你与一些软件开发人员共事于一家公司时,了解如何让自己发挥更大的作用是很重要的。
大多数数据科学家都在提供产品/服务的公司里工作,这些产品/服务主要由软件开发团队开发。数据科学家通过数据分析或某种类型的预测建模来扩展上述产品或服务的功能,只知道如何在笔记本上训练机器学习模型是不够的。同样地,要和软件开发部门展开有效工作,只了解软件开发的基本知识也是不够的。
你需要知道如何编写简单有效、可读性高的代码,还需知道这些代码的最佳组合方式。数据结构、算法、设计模式以及面试问题就是更高级的编程概念发挥作用的地方,这些概念不一定只与面试有关。大多数人会选择Python作为编程语言,因此掌握该语言的非数据科学方面至关重要。
本文就将介绍3本对于数据科学家极其有用的编程书,让我们开始吧!
《使用Python实践数据结构和算法》(Hands-On Data Structures and Algorithms with Python)
链接:https://amzn.to/3hiEHW8
如果打算认真对待编程工作,那么一定要学习数据结构和算法。这本书涵盖了初学时不太理解的一些概念,但阅读之后你就自然懂了,你会发觉有效的代码是如此地优美,书中还介绍了一些常见面试问题的回答。
这是学习Python编程语言中的数据结构和算法的入门书籍,它涵盖了诸如内置数据类型、集合模块的数据类型、单链接和双链接列表、堆栈、队列、树和树遍历、散列表、图表、搜索和排序算法等主题。
网上有许多关于这些方面的学习资源,但是我觉得这本书的价格更合理。这本书有400多页,别想着很快就能读完。书里的主题相当复杂,至少要花两个月的时间。
《掌握Python设计模式》(Mastering Python Design Patterns)
链接:https://amzn.to/2ZulMBw
将设计模式看作一组最佳实践,在设计应用程序时,可以用它解决特殊问题,这本书会教你如何构造代码。仅靠笔记本无法解决产品环境问题,即便不编写应用程序(传统意义上来说),你也必须学习如何正确地构建代码。
这本书涵盖了包括抽象工厂模式、构建器模式、适配器模式、装饰器模式、桥接模式、外观模式、命令模式、观察者模式等众多设计模式。
为了使学习更有逻辑性和易用性,这本书分为几个章节,主要章节为创建模式、结构模式和行为模式。本书只有250页左右,所以你应该不会花太长时间就能读完。再次提醒,这个话题一点都不简单,所以慢慢来,不要着急。
《Python中编程面试的要素》(Elements of Programming Interviews In Python)
链接:https://amzn.to/3ivutTS
如果你读了的第一本书——《使用Python实践数据结构和算法》,你可能会发现这两本书有点相似。但这不代表再读这本书是做无用功,让我来详细说明。
你需要好好学习数据结构和算法,复习几个月前学过的概念绝对是有用的。此外,你应该学习或至少浏览一些最常见的编程面试问题,你可能在面试时遇到这些问题。你应该了解这些东西,即使它与数据科学没有直接联系。
我知道这听起来很无奈,但这就是数据科学,面试官要求你要知道大量知识,在工作中你也许只会用到5%。也许会用到吧,但事实就是如此残酷。
想成为优秀的数据科学家,你要学的东西还有很多,先从这三本书开始吧。