
传送门:
1.数据科学简介与应用
数据科学主要以统计学、机器学习、数据可视化以及(某一)领域知识为理论基础,其主要研究内容包括数据科学基础理论、数据预处理、数据计算和数据管理(来自百度百科)。
1.资料科学所要具备的能力
- 统计(Statistic)
- 单变量分析、多变量分析、变异数分析
- 数据处理(Data Munging)
- 抓取数据、清理数据、转换数据
- 数据可视化(Data Visualization)
- 图表、商业智能系统
2.数据科学主要分为以下几个步骤

2.Python与数据科学
1.python语言

Python是什么,请直接阅读链接第一部分。
- 通过对比,可以突出python的简单易用
#使用JAVA输出Hello World
class test{
public static void main(String args[]){
System.out.println("Hello World");
}
}
#使用python语言输出Hello World 仅需一行代码
print("Hello World")
2.python具备完整的数据分析套件
-
如果需要做统计科学计算,python中具备Numpy、Scipy、statsmodels.
-
如果需要进行深度学习,又可以使用TensorFlow、MXNET,它们都有python的接口
-
做结构化数据处理与分析,又可以用Pandas
-
对大数据进行处理,可以使用PySpark
-
机器学习, python上又有Scikit-learn
3.安装Anaconda
看过我之前文章的同学都知道,我一直用的是python2.7 最早也使用过3.5,现在却要带大家安装Anaconda,原谅我当初学习python的时候太年轻,Python易学,但用好却不容易,其中比较头疼的就是包的管理和Python不同版本的问题,特别是当你使用Windows的时候。然后就出现了发行版的Python(比如Anaconda),发行版最直接的好处就是将python和许多常用的package打包,方便我们使用。接下来我带大家安装Anaconda.


建议安装使用Python3,理由如下
- python3和python2有很多语法的差异,具体参考解释 Python 2 和 Python 3 的版本之间差别
- Python语言作者Guido van Rossum邮件通知Python 2.7支持时间延长到2020年,到时候将不再进行维护
然后根据自己电脑进行32/64位的下载。


4.使用Jupyter notebook
Jupyter Notebook(此前被称为 IPython notebook)是一个交互式笔记本,支持运行 40 多种编程语言。Jupyter Notebook 的本质是一个 Web 应用程序,便于创建和共享文学化程序文档,支持实时代码,数学方程,可视化和 markdown。 用途包括:数据清理和转换,数值模拟,统计建模,机器学习等等。这也是我们为什么要使用它的原因。



5.Python 3 语法
1.变量类型
和其他语言一样,python3有六个标准的数据类型:
- Number(数字)
- String(字符串)
- List(列表)
- Tuple(元组)
- Sets(集合)
- Dictionary(字典)
- 其中数字包括int、float、bool、complex(复数)。
- 内置的
type()
函数可以用来查询变量所指的对象类型。
此外还可以用Python的自省 isinstance 来判断
>>>a = 0609
>>> isinstance(a, int)
True
>>>
2.列表
- Python内置的一种数据类型是列表:list。
- list是一种有序的集合,可以随时添加和删除其中的元素。
- 序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。
- 列表可以存放各种类型的数据
#设置一个list
li = [304,12,999,46,405]
#查看list的相关功能使用dir()
dir(li)

#查看list的长度
>>>len(li)
5
#查看list内容
>>>print(li)
[304,12,999,46,405]
#通过下标取值
>>>li[0]
304
>>>li[-1]
405
>>>li[0:3]
[304,12,999]
#列表增加
>>>li.append(609)
>>>print(li)
[304,12,999,46,405,609]
#列表扩展extend 接受一个参数,这个参数总是一个 list,
并且把这个 list 中的每个元素添加到原 list 中
>>>li.extend(['xlm','love'])
>>>print(li)
[304,12,999,46,405,'xlm','love']
#list排序
>>>li.sort
>>>print(li)
[12, 46, 304, 405, 999, 'xlm', 'love']
#将一个列表降序排列
>>>li = [304,12,999,46,405]
>>>li.sort(reverse=True)
>>>print(li)
[999, 405, 304, 46, 12]
3.元组
元组(tuple)与列表类似,不同之处在于元组的元素不能修改。
tuple = (304,12,999,46,405)
4.字典
- 字典(dictionary)是Python中另一个非常有用的内置数据类型。
- 列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
- 字典是一种映射类型,字典用"{ }"标识,它是一个无序的键(key) : 值(value)对集合。
- 键(key)必须使用不可变类型。
- 在同一个字典中,键(key)必须是唯一的。

未完待续,连载中...
网友评论