《利用python进行数据分析》学习 numpy库

《利用python进行数据分析》学习 numpy库

一、基本概念
Numpy是高性能科学计算和数据分析的基础包,功能如下:
1、ndarray,一个具有矢量算数运算和复杂广播能力的快速且节省空间的多维数组。
2、用于对整组数据进行快速运算的标准数学函数(无需编写循环)
3、用于读写磁盘数据的工具以及用于操作内存映射文件的工具
4、线性代数、随机数生成以及傅里叶变换功能

对于大部分数据分析应用而言,我最关注的主要功能主要集中在:
1、用于数据整理和清理,子集构造和过滤,转换等快速的矢量化数组运算。
2、常见的数组算法,如排序、唯一化、集合运算等。
3、高效的描述统计和数据聚合、摘要运算。
4、用于异构数据集的合并/连接运算的数据对齐和关系型数据运算
5、将条件逻辑表述为数组表达式(而不是带有if-elif-else的循环)。
6、数据的分组运算(聚合、转换、函数应用等)


NumPy的ndarray:一种多维数组对象

一、创建ndarray
1、使用array函数,这个函数接受一切序列化的对象

2、zeros和ones分别可以创建指定长度和形状的全0或全1数组,empty可以创建一个没有任何具体值的数组

3、arange函数 类似于内置的的range,但返回的是一个ndarray而不是列表

4、eye、identity 创建一个E

二、ndarray的数据类型

可以通过ndarray的astype方法显式的转换其dtype:

in:import numpy as np
in:arr = np.array([1,2,3,4,5])
in:arr.dtype
out:dtype(‘int64’)
in:arr_2=arr.astype(np.float64)
in:arr_2.dtype
out:dtype('float64')


num_strings=np.array(['1','2','3']),dtype=np.string_)
num_strings.astype(int)

基本的索引和切片
一、Numpy数组的索引

arr=np.arange(10)

arr[5:8]
array([5,6,7])


_________________

arr2d=np.array([[1,2,3],[4,5,6],[7,8,9]])
arr2d[2]
array([7,8,9])
arr2d[0][2]
3
arr2d[0,2]
3

在多维数组中,如果省略了后面的索引,则返回对象是一个维度低一级的ndarray

二、切片索引

arr2d=np.array([[1,2,3],[4,5,6],[7,8,9]])

维度就是轴向,二维数组由两个轴向,三维数组有三个轴向

高维度对象可以在一个轴向或者多个轴向进行切片,也可以跟整数索引混合使用

arr[:2]
arr[:2,1:]

像这样进行切片时,只能得到相同维数的数组视图,通过将整数索引和切片混合,可以得到低纬度的切片:

arr2d[1,:2]
arr2d[2,:1]

三、布尔型索引

你可能感兴趣的:(《利用python进行数据分析》学习 numpy库)