【问题标题】:How to calculate multiple average in numpy?如何在numpy中计算多个平均值?
【发布时间】:2018-04-29 22:23:45
【问题描述】:

在这种情况下,

import numpy as np
import matplotlib.pyplot as plt

x=np.linspace(0,1,100)
y=x**2

result=np.average(y)
print(result)

我需要计算两组平均值

if y>.5 :
    result1=np.average(y=.5)
    result2.np.average(y-.5)
if y<=.5
    result1=np.average(y)

result1 具有最大值 y 值,result2 最小值。但是,我不能将 if 条件应用于 numpy 数组。

【问题讨论】:

  • 你到底想做什么?
  • @ninesalt 计算 y 低于或高于 0.5 的范围的平均值
  • 使用numpy.where 代替你的if 语句。

标签: python numpy


【解决方案1】:

您可以确定哪些元素大于或小于0.5,然后使用它来索引回y

>>> np.average(y[y>0.5])
0.7443118049178656
>>> np.average(y[y<0.5])
0.16784001632486484

【讨论】:

    猜你喜欢
    • 2017-02-06
    • 2011-04-23
    • 1970-01-01
    • 2016-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-24
    相关资源
    最近更新 更多