鱼C论坛

 找回密码
 立即注册
查看: 1958|回复: 0

[技术交流] Python中的tile函数,shape函数,sum函数,argsort函数

[复制链接]
发表于 2018-4-10 08:55:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
上述四个函数就是Numpy库的函数,所以导入Numpy库就可以使用了,下面讲一下具体的用法:
1.tile函数
函数形式是tile(A,reps)
A的类型几乎所有类型都可以:array,list,tuple,dict,matrix以及基本的数据类型int,string,float,bool等。
reps的类型可以使tuple,list,dict,array,int,bool但不可以是float,string,matrix。
举例说明:
  1. >>> import numpy
  2. >>> numpy.tile(1,(5,1))
  3. array([[1],
  4.        [1],
  5.        [1],
  6.        [1],
  7.        [1]])
  8. >>> numpy.tile(2,(5,2))
  9. array([[2, 2],
  10.        [2, 2],
  11.        [2, 2],
  12.        [2, 2],
  13.        [2, 2]])
  14. >>> numpy.tile((3,2),(5,2))
  15. array([[3, 2, 3, 2],
  16.        [3, 2, 3, 2],
  17.        [3, 2, 3, 2],
  18.        [3, 2, 3, 2],
  19.        [3, 2, 3, 2]])
复制代码


2.shape函数
功能是读取矩阵的长度,输入参数可以是一个整数表示维度,也可以是一个矩阵。
举例说明:
  1. >>> import numpy
  2. >>> array1 = numpy.tile(1,(3,2))
  3. >>> array1
  4. array([[1, 1],
  5.        [1, 1],
  6.        [1, 1]])
  7. >>> array1.shape
  8. (3, 2)
  9. >>> array1.shape[0]       #shape[0]表示第一维的长度
  10. 3
  11. >>> array1.shape[1]        #shape[1]表示第二维的长度
  12. 2
复制代码



3.sum函数
sum(a,axis=0)或者sum(axis=1)
axis=0就是普通的相加,axis=1则是将一个矩阵的每一行向量相加
举例说明:
  1. >>> import numpy
  2. >>> array1 = numpy.tile(1,(3,2))
  3. >>> array1
  4. array([[1, 1],
  5.        [1, 1],
  6.        [1, 1]])
  7. >>> array1.sum()
  8. 6
  9. >>> array1.sum(axis=1)
  10. array([2, 2, 2])
复制代码



4.argsort函数
返回数组值从小到大的索引值
举例说明:
  1. >>> impoet numpy as np
  2. >>> x = np.array([3, 1, 2])
  3. >>> np.argsort(x)
  4. array([1, 2, 0], dtype=int64)
  5. >>> x = np.array([[0, 3], [2, 2]])
  6. >>> x
  7. array([[0, 3],
  8.        [2, 2]])
  9. >>> np.argsort(x, axis=0) #按列排序
  10. array([[0, 1],
  11.        [1, 0]], dtype=int64)
  12. >>> np.argsort(x, axis=1) #按行排序
  13. array([[0, 1],
  14.        [0, 1]], dtype=int64)
  15. >>>  x = np.array([3, 1, 2])
  16. >>> np.argsort(x) #按升序排列
  17. array([1, 2, 0], dtype=int64)
  18. >>> np.argsort(-x) #按降序排列
  19. array([0, 2, 1], dtype=int64)
复制代码

此外排序还有两个常用的函数sort和sorted。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-20 10:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表