У меня есть следующий код:
import numpy as np
class EM(object):
# Initialization
def __init__(self, X, k=2):
X = np.asarray(X)
self.data = X.copy()
# number of clusters
self.k = k
# randomly assign data to the clusters
self.data['label'] = map(lambda x: x + 1, np.random.choice(self.k, len(self.data))) # gives the error
, где X изначально является pd.Dataframe
с формой (19,182, 5). Запуск кода дает мне следующую ошибку:
IndexError: допустимыми являются только целые числа, срезы (:), многоточие (...), numpy.newaxis (None) и целые или логические массивы
Как мне написать новый столбец для self.data
. Чем это отличается от добавления / записи / работы с объектом данных вне класса?