Python数据科学(一)- python与数据科学应用(Ⅰ)

0.304字数 1191阅读 1479


传送门:

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.

也可以百度搜索Anaconda
根据自己的电脑系统选择

建议安装使用Python3,理由如下

然后根据自己电脑进行32/64位的下载。


下载完毕安装就好,记得环境变量那一项要勾选
安装完毕后再窗口会看到带有Jupyter notebook

4.使用Jupyter notebook

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

安装好Anaconda,打开cmd,输入Jupyter notebook
点击New,新建一个文件
可以通过按钮或者快捷键运行代码

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)必须是唯一的。

未完待续,连载中...