什么是数据分析
数据分析是指用适当的统计分析方法对收集来的大量数据进行分析, 提取有用的信息形成结论,并对数据加以详细研究和概括总结的过程.
使用pyhon做数据分析的常用库
numpy 处理基础数值算法
scipy 处理科学计算
matplotlib 实现数据可视化
pandas 提供了序列高级函数
Numpy概述
Numerical Python(数值的python),补充了python语言欠缺的数值运算能力.
Numpy是其他数据分析和机器学习库的底层库.
Numpy完全标准C语言实现, 运行效率充分优化.
Numpy开源免费.
Numpy的历史
1995年, Numeric, 用于完成python语言数值运算的扩充.
2001年, Scipy -> Numarray, 用于完成多维数组运算.
2005年, Numeric + Numarray -> Numpy
2006年, Numpy脱离了Scipy成为一个独立项目.
Numpy基础
Numpy的核心: ndarray对象
使用numpy.ndarray对象表示一个数组
importnumpyasnp
ary=np.array([1,2,3,4,5])
print(ary)
ary=ary*10
print(ary)
内存中的ndarray对象
元数据(metadata)
存储对目标数组的描述信息,如 dim count, dimensions, dtype, data等.
实际数据
完整的数组数据. (Ndarray数组是同质数组, 所有元素类型相同)
将实际数据与元数据分开存放,一方面提高了内存空间的使用效率,另一方面减少了对实际数据的访问频率,提高性能.
ndarray数组对象的创建
np.array(可以被解释为Numpy数组的序列)
np.arange(起始值(0), 终止值, 步长(1))
np.zeros(数组元素的个数, dtype='数组元素类型')
np.ones(数组元素的个数, dtype='数组元素类型')
案例:测试ndarray对象的创建
importnumpyasnp
# 创建二维数组
a=np.array([[1,2,3,4], [5,6,7,8]])
print(a)
# np.arange(起始值, 结束值, 步长)
b=np.arange(1,10,1)
print(b)
# np.zeros(数组元素个数, dtype='')
c=np.zeros(10)
print(c,'; c.dtype:',c.dtype)
# np.ones(数组元素个数, dtype='')
d=np.ones(10,dtype='int64')
print(d,'; d.dtype:',d.dtype)
ndarray对象属性的基本操作
数组的维度: array.shape
元素的类型: array.dtype
数组元素的个数: array.size
数组的索引(下标): array[0]
案例:测试数组的基本属性
importnumpyasnp
a=np.array([[1,2,3], [4,5,6]])
print(a)
# 测试数组的基本属性
print('a.shape:',a.shape)
# a.shape = (6, )
# print(a, 'a.shape:', a.shape)
print('a.size:',a.size)
print('len(a):',len(a))
# 数组元素的索引
ary=np.arange(1,28)
ary.shape= (3,3,3)
print(ary,'; ary.shape:',ary.shape)
print('ary[0]:',ary[0])
print('ary[0][0]:',ary[0][0])
print('ary[0][0][0]:',ary[0][0][0])
print('ary[0,0,0]:',ary[0,0,0])
# 遍历三维数组
foriinrange(ary.shape[0]):
forjinrange(ary.shape[1]):
forkinrange(ary.shape[2]):
print(ary[i,j,k],end=' ')
ndarray对象属性操作详解
Numpy内置的基本数据类型
类型名类型表示符
布尔型bool_
有符号整型int8(-128~127) / int16 / int32 / int64
无符号整型uint8(0~255) / uint16 / uint32 / uint64
浮点型float16 / float32 / float64
复数型complex64 / complex128
字符串型str_ (每个字符串用32位的Unicode编码表示)
numpy自定义复合类型
案例:在ndarray数组中存储3位学生信息