返回顶部
首页 > 资讯 > 后端开发 > Python >使用numpy对数组求平均时如何忽略nan值
  • 157
分享到

使用numpy对数组求平均时如何忽略nan值

2024-04-02 19:04:59 157人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

目录numpy对数组求平均时忽略nan值使用np.mean()的效果使用np.nanmean()的效果numpy含nan值进行归一化操作方法一方法二numpy对数组求平均时忽略nan

numpy对数组求平均时忽略nan值

在对numpy数组求平均np.mean()或者求数组中最大最小值np.max()/np.min()时,如果数组中有nan,此时求得的结果为:nan,那么该如何忽略其中的nan呢?

此时应该用另一个方法

  • np.nanmean(),np.nanmax(),np.nanmin()

使用np.mean()的效果

mean

使用np.nanmean()的效果

np.nanmean()

numpy含nan值进行归一化操作

方法一

import numpy as np
A = np.array([[  7,     4,   5,  7000],
              [  1,   900,   9,   nan],
              [  5, -1000, nan,   100],
              [nan,   nan,   3,  1000]])
#Compute NaN-nORMs
L1_norm = np.nansum(np.abs(A), axis=1)
L2_norm = np.sqrt(np.nansum(A**2, axis=1))
max_norm = np.nanmax(np.abs(A), axis=1)
#Normalize rows
A_L1 =  A / L1_norm[:,np.newaxis] # A.values if Dataframe
A_L2 =  A / L2_norm[:,np.newaxis]
A_max = A / max_norm[:,np.newaxis]
#Check that it worked
L1_norm_after = np.nansum(np.abs(A_L1), axis=1)
L2_norm_after = np.sqrt(np.nansum(A_L2**2, axis=1))
max_norm_after = np.nanmax(np.abs(A_max), axis=1)
 In[182]: L1_norm_after
Out[182]: array([1., 1., 1., 1.])
 In[183]: L2_norm_after
Out[183]: array([1., 1., 1., 1.])
 In[184]: max_norm_after
Out[184]: array([1., 1., 1., 1.])

方法二

rom numpy import nan, nanmean
from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
A = [[  7,     4,   5,  7000],
     [  1,   900,   9,   nan],
     [  5, -1000, nan,   100],
     [nan,   nan,   3,  1000]]
scaler.fit(A)
In [45]: scaler.mean_
Out[45]: array([4.33333333,  -32.,    5.66666667, 2700.])
In [46]: scaler.transform(A)
Out[46]: array([[ 1.06904497,  0.04638641, -0.26726124,  1.40399977],
                [-1.33630621,  1.20089267,  1.33630621,         nan],
                [ 0.26726124, -1.24727908,         nan, -0.84893009],
                [        nan,         nan, -1.06904497, -0.55506968]])
In [54]: nanmean(scaler.transform(A), axis=0)
Out[54]: array([ 1.48029737e-16,  0.00000000e+00, -1.48029737e-16,0.00000000e+00])

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: 使用numpy对数组求平均时如何忽略nan值

本文链接: https://lsjlt.com/news/138868.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 使用numpy对数组求平均时如何忽略nan值
    目录numpy对数组求平均时忽略nan值使用np.mean()的效果使用np.nanmean()的效果numpy含nan值进行归一化操作方法一方法二numpy对数组求平均时忽略nan...
    99+
    2024-04-02
  • 使用numpy对数组求平均时怎么忽略nan值
    这篇文章主要介绍“使用numpy对数组求平均时怎么忽略nan值”,在日常操作中,相信很多人在使用numpy对数组求平均时怎么忽略nan值问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”使用numpy对数组求平均...
    99+
    2023-06-29
  • php数组如何求平均值
    在php中使用array_sum和count函数求数组的平均值,具体方法如下:首先,新建一个php项目文件;php项目文件新建好后,在文件中定义一个数组并赋值;$arr = array(2,4,6,8);数组定义好后,使用array_sum...
    99+
    2024-04-02
  • javascript二维数组如何求平均值
    这篇文章主要介绍“javascript二维数组如何求平均值”,在日常操作中,相信很多人在javascript二维数组如何求平均值问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”...
    99+
    2024-04-02
  • jquery如何求一个数组的平均值
    这篇“jquery如何求一个数组的平均值”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“jq...
    99+
    2024-04-02
  • php如何求一个一维数组的平均值
    这篇文章主要讲解了“php如何求一个一维数组的平均值”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php如何求一个一维数组的平均值”吧!php求一个一维数组的平均值的方法:1、新建一个php...
    99+
    2023-07-04
  • php数组如何去掉最大值和最小值后求平均
    这篇文章主要讲解了“php数组如何去掉最大值和最小值后求平均”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php数组如何去掉最大值和最小值后求平均”吧!方法:1、对数组进行升序排序,并用“a...
    99+
    2023-06-30
  • java如何求数值型数组中元素的最大值、最小值、平均数、总和等操作
    这篇文章主要介绍了java如何求数值型数组中元素的最大值、最小值、平均数、总和等操作,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。求数值型数...
    99+
    2024-04-02
  • 如何使用NumPy水平组合数组和垂直组合数组
    本篇内容主要讲解“如何使用NumPy水平组合数组和垂直组合数组”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用NumPy水平组合数组和垂直组合数组”吧!1...
    99+
    2024-04-02
  • 使用java如何求数组的最值
    这篇文章将为大家详细讲解有关使用java如何求数组的最值,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。常用的java框架有哪些1.SpringMVC,Spring Web MVC是一种基于J...
    99+
    2023-06-14
  • 如何使用JavaScript求数组的最小值
    这篇文章主要介绍“如何使用JavaScript求数组的最小值”,在日常操作中,相信很多人在如何使用JavaScript求数组的最小值问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解...
    99+
    2024-04-02
  • Pytorch中如何使用ImageFolder读取数据集时忽略特定文件
    这篇文章主要介绍Pytorch中如何使用ImageFolder读取数据集时忽略特定文件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、使用ImageFolder读取数据集时忽略特定文件如果事先知道需要忽略哪些文件,...
    99+
    2023-06-29
  • ASP.NET 中如何使用 NumPy 数组作为对象容器?
    在 ASP.NET 中,使用 NumPy 数组作为对象容器是一个非常常见的需求。NumPy 是一种用于科学计算的 Python 库,它提供了一种灵活的、高性能的多维数组对象,以及用于处理这些数组的各种工具。在本文中,我们将介绍如何在 AS...
    99+
    2023-08-25
    numy 对象 容器
  • 如何使用 PHP 按键值对数组进行排序?
    是的,可以使用 ksort() 或 krsort() 函数按键值对数组进行排序。ksort() 按键升序排序,krsort() 按键降序排序。 使用 PHP 按键值对数组进行排序 在 ...
    99+
    2024-05-01
    php 排序 键值对
  • LeetCode解题攻略:如何使用Go语言处理数组和HTTP请求?
    LeetCode是一个非常受欢迎的在线编程平台,它提供了海量的算法题目,是程序员们进行编程训练和技能提升的良好场所。而Go语言作为一门高性能的编程语言,也备受程序员们的青睐。在本文中,我们将介绍如何使用Go语言处理数组和HTTP请求,以帮...
    99+
    2023-11-14
    http leetcode 数组
  • 如何使用PHP对数组中的几个值进行排序
    如何使用PHP对数组中的几个值进行排序 在PHP中,对数组中的值进行排序是一个常见的操作。有时候我们希望只对数组中的几个值进行排序,而不是整个数组。下面将介绍如何使用PHP对数组中的几...
    99+
    2024-04-02
  • 如何在Unix环境中使用Python对象来优化NumPy数组操作?
    NumPy是Python中用于科学计算的一个重要模块,它提供了高效的数组和矩阵运算功能。在处理大量数据时,NumPy的效率优势尤为明显。然而,NumPy的底层实现是基于C语言的,因此它的性能受到了一定的限制。在Unix环境下,我们可以使用...
    99+
    2023-07-01
    对象 unix numy
  • 从Go到NumPy:如何使用对象编程算法解决数值计算问题?
    在数值计算领域,算法的实现往往需要高效的计算和存储,同时也需要简单易用的接口。而对象编程的思想正好可以很好地满足这一需求。本文将介绍如何使用对象编程算法解决数值计算问题,以及如何从Go语言转向NumPy,实现更高效的数值计算。 从Go语...
    99+
    2023-10-24
    对象 编程算法 numy
  • 如何使用MPI_Reduce对来自不同处理器组的不同值进行独立求和
    使用MPI_Reduce函数可以对来自不同处理器组的不同值进行独立求和。以下是使用MPI_Reduce进行求和的步骤:1. 导入MP...
    99+
    2023-09-27
    MPI_Reduce
  • PHP如何使用用户定义的比较函数按值对数组进行排序
    这篇文章将为大家详细讲解有关PHP如何使用用户定义的比较函数按值对数组进行排序,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。PHP 使用用户定义的比较函数按值对数组进行排序 简介 在 PHP 中,我们可以...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作