Python常用函数与技巧总结(二)

来源:互联网 发布:嘉靖和万历知乎 编辑:程序博客网 时间:2024/06/05 15:27

列表生成式

    a=[i for i in range(0,5)]    print(a)
[0,1,2,3,4]

filter(function,iterable) 过滤器

list(filter(lambda x:x%2,range(10)))

维度shape
shape[0] 横向几行
shape[1] 纵向几列
[[5 10 15]
[20 25 30]]

a=np.array([5,10,15],[20,25,30])print(a.shape[0])

输出:2

vector=numpy.array([5,10,15,20])print(vector[vector==10])

输出:10

vector=numpy.array([5,10,15,20])print(vector.sum())

输出:50

matrix=numpy.array([[5,10,15],[20,25,30],[35,40,45]])matrix.sum(axis=1)

输出:[30,75,120]

初始化数组

a=np.arange(15).reshape(3,5)

a
[[0 1 2 3 4]
[5 6 7 8 9]
[10 11 12 13 14]]

数组值相乘与矩阵乘运算
值相乘单纯是对应值乘到一起
矩阵乘运算是按矩阵乘法规则运算

A=np.array([[1,1],            [0,1]])B=np.array([[2,0],            [3,4]])

A*B
A.dot(B)
np.dot(A,B)

快速构造数组 a=np.arange(15).reshape(3,5)

np.floor() 向下取整
b is a 即b和a代表同一个矩阵,操作也同步
b=a.copy()复制一个出来

np.argsort()元素排序

z[1::2,0::2]=1 从第1号行起每第二个等于1

归一化操作
(z-min)/(max-min)

z=10*np.random.random((5,5))zmin,zmax=z.min(),z.max()z=(z-zmin)/(zmax-zmin)

交换矩阵,第0行和第1行:

a[[0,1]]=a[[1,0]]

找出数组中与给定值最接近的数:

np.abs(z-a).argmin() #绝对值的最小值

np中判断是否是空值np.isnan
pd中pd.isnull

列表转换成字符串用join()

"".join(list(s))