【问题标题】:elementwise comparison failed; returning scalar, but in the future will perform elementwise comparison逐元素比较失败;返回标量,但将来将执行元素比较
【发布时间】:2020-04-07 21:02:13
【问题描述】:
n1data = pcatrain_data[train_labels[0, :] == i, :]
n2data = pcatrain_data[train_labels[0, :] == j, :]

pcatrain_data 的形状是 (14395,40) train_labels 的形状是 (1,14395)

据我了解,“train_labels[0, :] == i”将返回大小为 14395 的布尔值列表,其值为 true,且等于 i。

而且由于 pcatrain_data 的大小为 14395,它不应该导致任何错误。

这是导致问题的代码。 我正在尝试从 pcatrain_data 的特定行中获取所有列。 我想要 train_labels[0, :] == i 的行。

我不知道为什么会出现这个错误,因为我以前做过这个并且它有效。都在python3中

错误是“FutureWarning:元素比较失败;返回标量,但将来会执行元素比较”

【问题讨论】:

  • 请不要将代码添加为图像。将其编辑到问题的正文中

标签: python python-3.x numpy


【解决方案1】:

你需要写

import warnings
import numpy as np
warnings.simplefilter(action='ignore', category=FutureWarning)

然后警告就会消失

【讨论】:

  • 虽然这确实删除了警告,但根本问题仍然存在。
猜你喜欢
  • 2017-04-01
  • 2020-12-14
  • 2016-08-05
  • 2022-01-08
  • 1970-01-01
  • 2021-03-04
  • 2016-12-06
  • 2020-03-04
  • 2015-01-02
相关资源
最近更新 更多