【问题标题】:why 'The truth value of an array with more than one element is ambiguous. Use a.any() or a.all() ' happened [closed]为什么'具有多个元素的数组的真值是模棱两可的。使用 a.any() 或 a.all() '发生 [关闭]
【发布时间】:2021-01-20 04:28:40
【问题描述】:

1.我试图实现一个数据规范化算法。输入数据“data_train_set”是 NumPy 数组

data0 = [(x - min(data_train_set))/(max(data_train_set) - min(data_train_set)) for x in data_train_set]

2.我不知道应该把.any or.all放在哪里

【问题讨论】:

  • 我认为 data_train_set 可能为零,所以它说不明确。
  • 不要在列表理解中计算min()max(),在外面计算它们,对于非常大的数组来说要快得多,并且你为每个元素计算min() 2 次跨度>

标签: python numpy normalization


【解决方案1】:

any and all 将输入作为布尔数组或 0 和 1(大于零的数字)并返回 True 或 False。

如果数组的任何一个值非零或为真,则任何返回真。否则为假。

如果数组的所有值都不为零,则全部返回 true,或者为 true。否则为假。

您可以将这些运算符用作:

data0 = any([(x - min(data_train_set))/(max(data_train_set) - min(data_train_set)) for x in data_train_set])

【讨论】:

    猜你喜欢
    • 2019-05-05
    • 2019-10-08
    • 2017-01-23
    • 1970-01-01
    • 2018-03-28
    • 1970-01-01
    • 2015-09-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多