在上篇文章里,为大家推荐了一些数学学习的软件和微积分、线性代数、概率统计的学习视频,今天再推荐一些精心挑选的经典教材,并为大家提供电子书的下载链接,和视频搭配起来一起学习,效果会更好。同时我们也会为您介绍一些用Python学数学必备的一些软件和库。
美国大学最近几年出版的数学教材,都会有结合数学软件(MATLAB等CAS)来学习的指导说明,也就是说CAS以及编程已经是大学数学学习的一部分了。不仅如此,在这些数学教材里,都会有大量数学与实际应用相结合的案例与习题,比如物理、化学、生物、经济、计算机、互联网等诸多领域,让你可以深切感受到数学是自然科学的基石,而这些也是国内教材所匮乏的。
线性代数、微积分、概率统计教材推荐
下面这些教材经过千辛万苦终于搜集到了它们的电子版,想要学习的朋友可以在文末查看索取方式
线性代数教材
线性代数特别推荐下面两本教材,这两本书都是华章出品的中文版教材:
- 《线性代数》,史蒂文 J.利昂 (Steven J.Leon)
- 《线性代数及其应用》,戴维 C.雷 (David C.Lay), 史蒂文 R.雷 (Steven R.Lay)
如果你英语比较OK,可以结合的视频教程《麻省理工公开课:线性代数》来看这个视频所用的教材,不过视频录制时间比较早,所用教材也比较落后了,推荐看新版(第4版或第5版):
- 《Introduction to Linear Algebra》William Gilbert Strang(威廉·吉尔伯特·斯特朗)
微积分教材
微积分教材,简单入门可以看普林斯顿微积分读本以及倚天屠龙,可以主要只看托马斯微积分即可。
- 《普林斯顿微积分读本》(The Calculus Lifesaver:All the Tools You Need to Excel at Calculus)阿德里安·班纳 (Adrian Banner)
- 《托马斯微积分》(Thomas` Calculus)高等教育出版社出版
- 《微积分之屠龙宝刀》和《微积分之倚天宝剑》,C·亚当斯(Colin Adamx) (作者), J·哈斯(Joel Hass) (作者), A·汤普森(Abigail Thompson) (作者)。这两本书书名不忍直视,不要被表面名称误导哦
概率统计教材
- 《数理统计与数据分析》(Mathematical Statistics and Data Analysis)JohnA.Rice (作者)
- 《统计学》(Statistics for Engineers and the Sciences)门登霍尔(William Mendenhall), 辛塞奇(Terry Sincich)
- 《统计推断》(Statistical inference) 卡塞拉 (George Casello) (作者), 贝耶 (Roger L.Berger) (作者)
以上教材都要求你使用MATLAB,不过这里建议替换成Python,因为:
- 一是在数学数据的生产实践方面(尤其是国内找工作),Python比MATLAB的通用性更好;
- 二是Python安装比较方便且免费,不像MATLAB安装有17GB(大小不一,起码10G左右),而且大多国内企业不会购买昂贵的版权(国内外高校例外);
- 三是Python虽然在数学教材方面不及MATLAB,但是美国不少高校在教学时还是比较推荐Python的,而且MATLAB在数学方面可以做的事情,Python都可以做。
Python 必备软件与库
要用Python学习数学,需要借助一些库才能让它成为超越MATLAB、R、SAS等数学和统计学软件的利器,同时我们也会为大家推荐一种国外比较流行的学习方法就是Cheat Sheet(小抄,索引表),我们也会为大家提供这方面的文档信息。
编程时不需要死记硬背的,但是你一定要善于查询文档,以及可以做到快速搜索、查询并使用,而Cheat Sheet就跟单词本一样,有助于我们快速学习。这种方法类似于思维导图,非常推荐每个初学技术的朋友掌握。
Anaconda与Jupyter Notebook
Anaconda指的是一个开源的Python发行版本,其包含了conda、Python等280多左右的科学包及其依赖项,是数据科学家、Python程序员、机器学习/深度学习必备的软件。当然它也支持R。
- 我们要使用的Numpy、Sympy、Pandas、Matplotlib、Scipy、Seaborn以及Jupyter Notebook等都包含在里面,无需额外下载。
- 自带conda包管理器,可以替代pip,安装管理包;
- 可以非常方便的为不同项目建立不同的运行环境。
conda list #查看安装了哪些包
conda install PKGNAME==3.1.4 #安装版本为3.1.4的包
conda create --name ENVNAME python=3.6
"PKG1>7.6" PKG2 #创建一个名称为ENVNAME,Python版本为3.6,以及不同包版本的环境
Jupyter Notebook是做Python笔记以及学习的必备工具,已经被国外各大高校和Python程序员采用,它支持Python代码的编写、运行、展示等,同时也支持Markdown、LaTex语法。
Scipy
Scipy是Python生态的开源数学、科学、工程计算包集合,在Numpy库的基础上增加了众多的数学、科学以及工程计算中常用的库函数。例如线性代数、常微分方程数值求解、信号处理、图像处理、稀疏矩阵等等。
Numpy
NumPy是Numerical Python的简写,是Python数值计算的基石。它是一个提供多了维数组对象,多种派生对象(如:掩码数组、矩阵)以及用于快速操作数组的函数及API,它包括数学、逻辑、数组形状变换、排序、选择、I/O 、离散傅立叶变换、基本线性代数、基本统计运算、随机模拟等等。
Pandas
Pandas是一个开放源码、BSD许可的库,为Python编程语言提供高性能、易于使用的数据结构和数据分析工具。
Matplotlib
matplotlib是最流行的用于制图及其他二维数据可视化的Python库。
Sympy
SymPy是一个符号计算的Python库。它的目标是成为一个全功能的计算机代数系统,同时保持代码简 洁、易于理解和扩展。它完全由Python写成,不依赖于外部库。SymPy支持符号计算、高精度计算、模式匹配、绘图、解方程、微积分、组合数学、离散 数学、几何学、概率与统计、物理学等方面的功能
statsmodels
statsmodels是一个统计分析包,提供对许多不同统计模型估计的类和函数,并且可以进行统计测试和统计数据的探索。
正是因为有了以上这些Python开源包,才让Python有底气与巨无霸数学软件MATLAB、巨无霸统计软件SAS以及为数据、统计而生的R语言叫板。
电子书资源以及Cheat Sheet下载链接,可以加微信号:jishuzu360 索取。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。