# -*- coding: utf-8 -*-
# numpy 中的索引和切片
import numpy as np
file_path = '../datanum.csv'
t1 = np.loadtxt(file_path, delimiter = ',', dtype = 'int')
t2 = np.loadtxt(file_path, delimiter = ',', dtype = 'int', unpack = True)
print t1
print '*'*100
print t2
print '#'*50
# 取指定的行
print t2[2]
# 取连续的多行
print '-'*50
print t2[1:]
# 取不连续的多行
print '/'*50
print t1[[2,8,10]]
print '/'*50
print t1[1,:]
# 取列的时候
print '/'*50
print t1[:,0]
# 取连续的多列
print '/'*50
print t1[:,[0,2]]
# 取行和列
print '/'*50
print t1[2,2]
# 取多行和多列 ,取第三行到第五行, 第1列到第三列
# 取得行和列交叉的位置
print '/'*50
print t1[2:5,0:3]
# 取多个不相邻的点 (0,1) (2,2) (2,0)
print '/'*50
print t1[[0,2,2],[1,2,0]]
# 修改某一个点的值
t1[[0],[2]] = 0
print '/'*50
# 将大于 85656 的值全部改为 0
t1[t1>85656] = 0
print t1
# where 三元运算符 np.where(t1<10000 , 0 , 10000)
print '/'*50
t3 = np.where(t1<85656 , 0 , 10000)
print t3
# clip clip(10,18) 小于10的变为10 , 大于 18的 改为18
# 数组的拼接 np.vstack((t1, t2)) 竖直拼接 np.hstack() 水平拼接
# 数组的分隔
# 数组的行进行交换 t1[[1,2],:] = t1[[2,1], :]
# 数组的列交换 t1[:,[0,2]] = t1[:,[2,0]]
# numpy 更多的方法
'''
创建全部为0的数组: np.zeros((3,4))
创建全部为1的数组: np.ones((3,4))
创建全部为对角线的正方形数组(方阵) : np.eye(3)
获取最大值,最小值的位置
1. np.argmax(t, axis = 0)
2. np.argmin(t, axis = 1)
'''
2018-12-19 numpy中的索引和切片
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 2018.2.3 目标:身心健康,财富丰盛 好种子: 1早起健康早餐,种下健康的种子,回向群里姐妹及家人身心健康 ...
- 小学语文修改病句的方法 修改病句是小学语文考试中常见的题型,在修改病句之前,我们应该清晰的了解有哪些病句现象,下面...