您好,欢迎来到网暖!

当前位置:网暖 » 站长资讯 » 建站基础 » 网络技术 » 文章详细 订阅RssFeed

numpy_ndarray元素计算函数

来源:网络整理 浏览:148次 时间:2020-04-05
元素计算函数
    1. ceil():向上最接近的整数,参数是number或array
    1. floor():向下最接近的整数,参数是number或array
    1. rint():四舍五入,参数是number或array
    1. isnan():判断元素是否为NaN(Not a Number),参数是number或array
    1. multiply():元素相乘,参数是number或array
    1. divide():元素相除,参数是number或array
    1. abs():元素的绝对值,参数是number或array
    1. where(condition, x, y):三原色运算符,x if condition else y

示例代码(1~7)

# randn() 返回具有标准正态分布的序列arr = np.random.randn(2, 3)print(arr)print(np.ceil(arr))print(np.floor(arr))print(np.rint(arr))print(np.isnan(arr))print(np.multiply(arr, arr))print(np.divide(arr, arr))print(np.where(arr > 0, 1, -1))

运行结果:

# print(arr)[[-0.75803752  0.0314314   1.15323032] [ 1.17567832  0.43641395  0.26288021]]# print(np.ceil(arr))[[-0.  1.  2.] [ 2.  1.  1.]]# print(np.floor(arr))[[-1.  0.  1.] [ 1.  0.  0.]]# print(np.rint(arr))[[-1.  0.  1.] [ 1.  0.  0.]]# print(np.isnan(arr))[[False False False] [False False False]]# print(np.multiply(arr, arr))[[  5.16284053e+00   1.77170104e+00   3.04027254e-02] [  5.11465231e-03   3.46109263e+00   1.37512421e-02]]# print(np.divide(arr, arr))[[ 1.  1.  1.] [ 1.  1.  1.]]# print(np.where(arr > 0, 1, -1))   >??????????????[[- 1  1 1] [1  1  1]]
元素统计函数
  1. np.mean(), np.sum():所有元素的平均值,所有元素的和,参数是number或array
  2. np.max(), np.min():所有元素的最大值,所有元素的最小值,参数是number或array
  3. np.std(), np.var():所有元素的标准差,所有元素的方差,参数是number或array
  4. np.argmax(), np.argmin():最大值的下标索引值,最小值的下标索引值,参数是number或array
  5. np.cumsum(), np.cumprod():返回一个一维数组,每个元素都是之前所有元素的累加和 和 累乘积,参数是number或array
  6. 多维数组默认统计全部维度,axis参数可以按指定轴心统计,值为0则按列统计,值为1则按行统计

示例代码:

arr = np.arange(12).reshape(3, 4)print(arr)print(np.cumsum(arr))   # 返回一个一维数组,每个元素都是之前所有元素的 累加和print(np.sum(arr))  # 所有元素和print(np.sum(arr, axis=0))  # 数组的按列统计和print(np.sum(arr, axis=1))  # 数组的按行统计和

运行结果:

# print(arr)[[ 0  1  2  3] [ 4  5  6  7] [ 8  9 10 11]]# print(np.cumsum(arr)) [ 0  1  3  6 10 15 21 28 36 45 55 66]# print(np.sum(arr)) # 所有元素的和66# print(np.sum(arr, axis=0)) # 0表示对数组的每一列的统计和[12 15 18 21]# print(np.sum(arr, axis=1)) # 1表示数组的每一行的统计和[ 6 22 38]
元素判断函数
  1. np.any():至少有一个元素满足指定条件,返回True
  2. np.all():所有的元素满足指定条件,返回True

示例代码:

arr = np.random.randn(2, 3)print(arr)print(np.any(arr > 0))print(np.all(arr > 0))

运行结果:

[[ 0.05075769 -1.31919688 -1.80636984] [-1.29317016 -1.3336612  -0.19316432]]TrueFalse
元素去重排序函数

np.unique():找到唯一值并返回排序结果,类似于Python的set集合

示例代码:

arr = np.array([[1, 2, 1], [2, 3, 4]])print(arr)print(np.unique(arr)

运行结果:

[[1 2 1] [2 3 4]][1 2 3 4]

推荐站点

  • 腾讯腾讯

    腾讯网(www.QQ.com)是中国浏览量最大的中文门户网站,是腾讯公司推出的集新闻信息、互动社区、娱乐产品和基础服务为一体的大型综合门户网站。腾讯网服务于全球华人用户,致力成为最具传播力和互动性,权威、主流、时尚的互联网媒体平台。通过强大的实时新闻和全面深入的信息资讯服务,为中国数以亿计的互联网用户提供富有创意的网上新生活。

    www.qq.com
  • 搜狐搜狐

    搜狐网是全球最大的中文门户网站,为用户提供24小时不间断的最新资讯,及搜索、邮件等网络服务。内容包括全球热点事件、突发新闻、时事评论、热播影视剧、体育赛事、行业动态、生活服务信息,以及论坛、博客、微博、我的搜狐等互动空间。

    www.sohu.com
  • 网易网易

    网易是中国领先的互联网技术公司,为用户提供免费邮箱、游戏、搜索引擎服务,开设新闻、娱乐、体育等30多个内容频道,及博客、视频、论坛等互动交流,网聚人的力量。

    www.163.com
  • 新浪新浪

    新浪网为全球用户24小时提供全面及时的中文资讯,内容覆盖国内外突发新闻事件、体坛赛事、娱乐时尚、产业资讯、实用信息等,设有新闻、体育、娱乐、财经、科技、房产、汽车等30多个内容频道,同时开设博客、视频、论坛等自由互动交流空间。

    www.sina.com.cn
  • 百度一下百度一下

    百度一下,你就知道

    www.baidu.com