【问题标题】:Python List Gives an Error of Numpy Array?Python 列表给出了 Numpy 数组的错误?
【发布时间】:2022-01-01 08:54:07
【问题描述】:

我有一个二维列表,其中包含 ([0,1,2],[3,4,5]) 之类的元素。它的元素类型是 numpy.ndarray。我正在尝试删除每个元素的第二列。当我检查它的类型时,它返回列表但它给出了ValueError: cannot delete array elements 错误。我检查了 StackOverflow,但没有找到类似的案例。代码如下,不胜感激。

for row in trainSet:
    del row[1]  

【问题讨论】:

  • 这能回答你的问题吗? Deleting Elements from an array
  • 您检查过列表中子数组的类型吗?
  • 不,正如我提到的,我使用列表而不是数组。
  • 我的列表由“numpy.ndarray”组成,我刚刚意识到这一点。那怎么删除那一栏,我还是一头雾水
  • 这已经是一个列表了,我只是想检查一下。

标签: python arrays python-3.x list numpy


【解决方案1】:

它是一个包含 numpy 数组的列表

import numpy as np
trainSet = np.array([[0,1,2],[3,4,5]]) 


#wrong way list(trainSet) # this do not convert nested lists
trainSet = list(map(lambda x: x.tolist(),trainSet)) #to make sure it is a list, do not contain nested numpy arrays
for row in trainSet:
    del row[1] 

print(trainSet)

[[0, 2], [3, 5]]

【讨论】:

  • 你拯救了我的一天,非常感谢!
猜你喜欢
  • 2017-03-31
  • 2017-10-08
  • 1970-01-01
  • 2016-01-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-02
  • 2020-09-06
相关资源
最近更新 更多