Numpy&&pandas

#Numpy#Pandas
是什么?numpy下载
优点:快速处理矩阵

##array

import numpy as np
a=np.array([2,23,4])
print a
[ 2 23 4]

a=np.array([2,23,4],dtype=np.int)
print a.dtype
int64

a=np.array([2,23,4],dtype=np.int32)
print a.dtype
int32

###数据类型
dtype = np.bool、int、float、complex复数
结构化定义数据:
import numpy as np
student = np.dtype([(‘name’,‘S20’), (‘age’, ‘i1’), (‘marks’, ‘f4’)])
a = np.array([(‘abc’, 21, 50),(‘xyz’, 18, 75)], dtype = student)
print(a)

每个内建类型都有一个唯一定义它的字符代码,如下:

字符 对应类型
b 布尔型
i (有符号) 整型
u 无符号整型 integer
f 浮点型
c 复数浮点型
m timedelta(时间间隔)
M datetime(日期时间)
O (Python) 对象

S, a (byte-)字符串
U Unicode
V 原始数据 (void)

NumPy 的数组中比较重要 ndarray 对象属性有:

##数组属性 说明
ndarray.ndim 秩,即轴的数量或维度的数量
ndarray.shape 数组的维度,对于矩阵,n 行 m 列
ndarray.size 数组元素的总个数,相当于 .shape 中 n*m 的值
ndarray.dtype ndarray 对象的元素类型
ndarray.itemsize ndarray 对象中每个元素的大小,以字节为单位
ndarray.flags ndarray 对象的内存信息
ndarray.real ndarray元素的实部
ndarray.imag ndarray 元素的虚部
ndarray.data 包含实际数组元素的缓冲区,由于一般通过数组的索引获取元素,所以通常不需要使用这个属性。

数组的快速构建
shape 数组形状
dtype 数据类型,可选
order 有"C"和"F"两个选项,分别代表,行优先和列优先,在计算机内存中的存储元素的顺序。

numpy.empty(shape, dtype = float, order = ‘C’)
numpy.empty 方法用来创建一个指定形状(shape)、数据类型(dtype)且未初始化的数组:
numpy.zeros(shape, dtype = float, order = ‘C’)
numpy.ones(shape, dtype = None, order = ‘C’)

##NumPy 从已有的数组创建数组

NumPy 高级索引

整数数组索引

x = np.array([[1, 2], [3, 4], [5, 6]])
y = x[[0,1,2], [0,1,0]]
print (y)
[1 4 5]

x = np.array([[ 0, 1, 2],[ 3, 4, 5],[ 6, 7, 8],[ 9, 10, 11]])
print (x)
[[ 0 1 2]
[ 3 4 5]
[ 6 7 8]
[ 9 10 11]]

rows = np.array([[0,0],[3,3]])
cols = np.array([[0,2],[0,2]])
y = x[rows,cols]
print (y)
[[ 0 2]
[ 9 11]]

a = np.array([[1,2,3], [4,5,6],[7,8,9]])
b = a[1:3, 1:3] //:取值没有包含stop的值
print(b)
[[5 6]
[8 9]]

布尔索引

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

~ 过滤

花式索引

x=np.arange(32).reshape((8,4))
print (x[[4,2,1,7]])
print (x[np.ix_([1,5,7,2],[0,3,1,2])])

Numpy 数组操作

reshape 不改变数据的条件下修改形状
flat 数组元素迭代器。 返回数组内的元素值。而不是包含元素所在的位置
flatten 返回一份数组拷贝,对拷贝所做的修改不会影响原始数组。
ndarray.flatten(order=‘C’)。展示时候数组会展开
order:‘C’ – 按行,‘F’ – 按列,‘A’ – 原顺序,‘K’ – 元素在内存中的出现顺序。
ravel 返回展开数组

翻转数组
transpose 对换数组的维度
ndarray.T 和 self.transpose() 相同
rollaxis 向后滚动指定的轴
swapaxes 对换数组的两个轴

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值