python切片操作主要分为列表切片和numpy切片。
一、列表的切片
>>> C1=[[ 1, 2, 3],[ 4, 5, 6],[ 7, 8, 9]]
>>> C1[1]
[4, 5, 6]
>>> C1[:][2]
[7, 8, 9]
>>> C1[2][:]
[7, 8, 9]
取第2列元素:
C=[C1[i][1] for i in range(len(C1))]
行列转置
#map实现 载入内存
print map(list,zip(*lista))
#map实现 不载入内存
import itertools
print map(list,itertools.izip(*lista))
二、numpy切片法
逗号’,’表示维度,‘:’表示范围
#获取某一列
>>> A1=np.array(A)
>>> A1
array([[1],
[2],
[3]])
>>> A1[:,0]
array([1, 2, 3])
---------------------------------
>>> import numpy as np
>>> A=np.array([[1,2,3],[4,5,6]])
>>> A
array([[1, 2, 3],
[4, 5, 6]])
>>> A[:,2]
array([3, 6])
------------------------------------------
#取其中部分元素(取除第1列外的元素)
>>> B=np.array([[1,2,3],[4,5,6],[7,8,9],[10,11,12]])
>>> B
array([[ 1, 2, 3],
[ 4, 5, 6],
[ 7, 8, 9],
[10, 11, 12]])
>>> B[:,1:]
array([[ 2, 3],
[ 5, 6],
[ 8, 9],
[11, 12]])
---------------------------------------
>>> B[1,]
array([4, 5, 6])
>>> B[1,:]
array([4, 5, 6])