Numpy索引、切片和迭代_数组

索引、切片和迭代


import numpy as np 
a = np.arange(15).reshape(5,3)**2
print(a)


Numpy索引、切片和迭代_数组_02

print(a[1:4] ,'\n') #获取2-4行
print(a[::-1] ,'\n') #按照行倒序显示所有元素
print(a[1:4:2] ,'\n') #获取2、4行(跳过1行打印)
print(a[0:4:3] ,'\n') #获取1、4行(跳过2行打印)
for i in a: #按照行遍历
    print(i)

Numpy索引、切片和迭代_迭代_03

print(a[:2] ,'\n') #获取前2行
print(a[::2] ,'\n') #获取全部行列(但每次跳过中间一行打印)
print(a[1:3,1] ,'\n')#获取2-3行的第2列元素
print(a[1:4,1:3] ,'\n')#获取2-4行的第2-3列元素

Numpy索引、切片和迭代_数据分析_04

# 迭代
for i in a:  #按行遍历
    print(i,",")
for j in a.flat: #flat遍历全部元素
    print(j,",")

Numpy索引、切片和迭代_迭代_05

# 布尔索引
b =a>10
print(b)
print(a[b])
a[b] = 0 
print(a)

Numpy索引、切片和迭代_数据分析_06

将不同数组堆叠在一起

a = np.floor(10*np.random.random((2,2)))
print(a,'\n')


b = np.floor(10*np.random.random((2,2)))
print(b,'\n')


print(np.vstack((a,b)) ,'\n' )  #行方向


print(np.hstack((a,b)) , '\n')  #列方向


print(np.column_stack((a,b)))   #列方向

Numpy索引、切片和迭代_迭代_07

更多关于numpy的使用查看中文版numpy官方文档:

https://www.numpy.org.cn/user/quickstart.html

后面的文章会继续更新pandas板块。

关注微信号,一起学习更多关于数据分析工具技能和数据运营思维实例。

Numpy索引、切片和迭代_数据分析_08