数据分析

什么是数据分析

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

使用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位学生信息

你可能感兴趣的:(数据分析)