数据分析(Numpy基础)

wordmhg 2019-10-31

数据分析(Numpy基础)

1.什么是数据分析?

数据分析是指,用适当的统计分析方法,对收集来的大量数据进行分析,提取有用信息并形成结论,从而实现对数据的详细研究和概括总结的过程。

2.python做数据分析的常用库

1. numpy        基础数值算法
2. scipy        科学计算
3. matplotlib   数据可视化
4. pandas       序列高级函数

一、numpy概述

1.什么是numpy?

1. Numerical Python,数字的Python,弥补了Python语言所欠缺的数值计算能力。
2. Numpy是其它数据分析及机器学习库的底层库。
3. Numpy完全标准C语言实现,运行效率充分优化。
4. Numpy开源免费。

2.numpy发展历史

1. 1995年,Numeric,Python语言数值计算扩充。
2. 2001年,Scipy->Numarray,多维数组运算。
3. 2005年,Numeric+Numarray->Numpy。
4. 2006年,Numpy脱离Scipy成为独立的项目。

3.numpy的性能

1. 代码简洁:减少Python代码中的循环。
2. 底层实现:厚内核(C)+薄接口(Python),保证性能。

二、numpy基础

1.ndarray数组

1.Numpy中的数组是numpy.ndarray类实例化的对象,其中包括:

元数据(metadata)存储对目标数组的描述信息,如:shape、dtype、size、data等,

实际数据完整的数组数据

将实际数据与元数据分开存放,一方面提高了内存空间的使用效率,另一方面大部分对数组的操作仅仅是对元数据的操作,从而减少对实际数据的访问频率,提高性能。

2.ndarray数组的特点:

1. Numpy数组是同质数组,即所有元素的数据类型必须相同
2. Numpy数组的下标从0开始,最后一个元素的下标为数组长度减1
import numpy

#numpy.ndarray类的对象表示数组
ary=numpy.array([1,2,3,4,5,6])
print(ary,type(ary)) #[1 2 3 4 5 6] <class ‘numpy.ndarray‘>

#ndarray的运算规则:数组一个矩阵
ary=ary+10
print(ary) #[11 12 13 14 15 16]

ary=ary+ary  #个数对应才能运算
print(ary)#[22 24 26 28 30 32]

ary=ary>30  #比较运算
print(ary) #[False False False False False  True]

2.数组的4种创建方式

(1)numpy.array(任何可被解释为Numpy数组的逻辑结构)

(2)numpy.arange(起始值(0),终止值,步长(1))

(3)numpy.zeros(数组元素个数, dtype=‘类型‘)

(4)numpy.ones(数组元素个数, dtype=‘类型‘)

import numpy

#1.numpy.array()
a1=numpy.array([[1,2,3],[4,5,6]])
print(a1,type(a1))  #[[1 2 3][4 5 6]]

#2.numpy.arange()
a2=numpy.arange(0,10,2)
print(a2,type(a2))  #[0 2 4 6 8]

#3.numpy.zeros()
a3=numpy.zeros((10,),dtype=‘float32‘)
print(a3,type(a3))  #[0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]

#4.numpy.ones()
a4=numpy.ones((2,3),dtype=‘int32‘)
print(a4,type(a4))  #[[1 1 1][1 1 1]]

#numpy.ones_like()  numpy.zeros_like()
#构建一个结构与a1相同的全1数组
print(numpy.ones_like(a1))  #[[1 1 1][1 1 1]]

3.数组的属性

(1)数组维度:np.ndarray.shape

(2)数组元素的数据类型:np.ndarray.dtype

(3)数组元素的个数:np.ndarray.size

(4)数组元素的索引(下标)

(5)数组属性汇总

4.数组的组合和拆分

相关推荐