Python语言成为数据科学领域的流行语言不只仅仅因为大数据公司采用它,还因为很多该领域的起步教学也是使用它,Python语言已经在2015机器学习领域上升到前十大语言。
Bjarne Stroustrup说:有两种语言:一种人们抱怨它,另外一种却没有人使用。
Python语言属于前一种,却在数值计算 机器学习等领域使用量不断上升,Python除了性能攸关的领域以外几乎能做任何事情,使用Python最好的选择是进行数据分析和统计计算,而学习Python用于Web开发却需要掌握很多不同的Web框架,比如Django,而学习Python用于数据科学只需要数据科学家们学习正则表达式的使用,包括科学类库和数据虚拟化等概念即可。这是两种完全不同的目标,无需掌握任何Web编程概念的数据专家可以容易地使用Python进行数据工作,毫无任何困难。
Python是一个有23年历史的丰富表达的动态编程语言,编程人员可以一次编写代码无需另外编译器就能执行,在Web开发中Python支持各种编程范式比如结构编程,函数式编程和面向对象编程。
不可否认使用Python编写一个动态Web网站可以是很优秀的,但是学习Web框架也是必须的。
下面是几种PythonWeb开发框架:
1. Django:它是一个完美的快速Web开发框架,适合数据库驱动的Web应用开发,但是它也许有点overkill(过度的杀伤威力),因为它会混淆文件系统和严格目录结构(strict directory structure),使用python进行Web开发的公司有纽约时报 Instagram,和 Pinterest.
2.Flask:这是对于初学者轻量解决方案,适合开发单页Web应用,框架不支持检验 数据抽象层和其他框架有的组件功能,它不是完整开发栈,只是用于小网站。
3.CherryPy:它着重Python的惯例设计,这样可以使用面向对象的方式开发应用,它是其他完整开发栈框架(TurboBears 和 Web2py)的基础模板。
此外还有Pyramid, Bottle, 和Pylons 等待,无论使用哪个框架,都需要深度阅读理解文档和教程。
使用Python进行Web开发也许是一个不切实际的选择,理由如下:
1.使用Python进行Web开发需要非标准和昂贵的主机托管,而PHP语言如此广泛应用在web开发,因此,大部分投资者不会投资用于运行python web网站的主机资源。也就是说,很难找到像PHP那样的主机资源运行你的Python Web应用。
2.相比PHP Java和Ruby on Rails,Python并不是在Web开发领域的普遍开发技术,Python用于数据科学正在不断吸引注意力,大量从事数据科学和机器学习的公司在寻找这方面的Python人才,而不是Web方面的Python人才。
3.Python用于Web开发已经探索很长一段时间,但是它相比其他语言如PHP,在学习方面有比较陡峭的学习曲线,比较难以学习掌握。
为什么Python是最适合于数据科学呢?
Python因为其类似英语语法,在研发大数据 财务 统计和数值计算等方面有其强大的天然性,最近快速增长的机器学习,自然语言处理和数据虚拟化以及数据探测 数据分析以及数据挖掘等需求导致了形成Pythonification。Python是数据科学家最畅销的技能,在纽约进行Python数据科学编程平均薪水是 $140,000
那么为什么数据科学家喜欢使用Python进行数据科学研究呢?
因为Python能够让他们的想法更快速地原型化,他们喜欢赶快把想法实现,然后快速地从巨大的数据集中分析得出结论。而Python在这方面编程是最多才多艺、最体现其能力的全才,它有助于科学家以优化最短的时间编码、调试、执行和得到的结果。
一个伟大的企业数据科学家真正价值是使用各种数据可视化帮助根据数据模式进行快速预测,从而赢得商业竞争优势,否则只是一场零和游戏。Python有科学计算需要的很高的计算强度。
1.Python有统一的设计哲学,它聚焦于易于使用,可读性好和对数据科学家的易学低门槛。
2.Python有高可扩展性scalability,和Stata, Matlab相比要快得多。
3.有越来越多的数据虚拟包和很酷的应用编程接口都增加了图形接口来采纳数据分析的结果输出。
4.Python有很大的数据科学社区,包括Sci-Kit learn, NumPy, Pandas, 和Statsmodels, SciPy等库包,这些都已经充分测试,Python数据科学包一直在增长。