嘿,我有一个简单的numpy数组,有7列,叫做data。我需要第二列和最后一列的最大值,所以我尝试了以下方法:
def intervall(data): start = np.amax(data[:,1]) end = np.amax(data[:,6]) return start, end
但由于某种原因,我得到了这个错误:
TypeError: '(slice(None, None, None), 1)' is an invalid key
有人知道为什么吗?
e3bfsja21#
显然,你实际上使用的是pandas.DataFrame,在这种情况下,你可以用途:
pandas.DataFrame
np.amax(data.iloc[:, [1,6]], 0)
即,选择列1和6并指定I want the maximum values for axis = 0。要将其定义为函数,可以这样做:
1
6
axis = 0
def intervall(data): start, end = np.amax(data.iloc[:, [1,6]], 0) return start, end
如果是numpy.ndarray,你可以这样做:
numpy.ndarray
np.amax(data[:, [1,6]], 0)
1条答案
按热度按时间e3bfsja21#
显然,你实际上使用的是
pandas.DataFrame
,在这种情况下,你可以用途:即,选择列
1
和6
并指定I want the maximum values foraxis = 0
。要将其定义为函数,可以这样做:
如果是
numpy.ndarray
,你可以这样做: