У меня есть набор данных значений частотной области, поэтому каждый элемент имеет "j"
в конце, например "27.6695554346-5.51875942715j"
. это рис некоторых данных в матрицеИспользование комплекснозначных данных в RandomForestClassifier
Когда я пытаюсь использовать RandomForestClassifier
со следующим кодом:
cfr = RandomForestClassifier(n_estimators=10,n_jobs =5)
cfr.fit(X1,y1)
predictedY2=cfr.predict(X2)
У меня есть эта ошибка:
ValueError: could not convert string to float: (27.6695554346-5.51875942715j)
Не могли бы вы объяснить, что я должен сделать, чтобы решить проблему?
Во-первых, вы должны представить свои данные в виде сложных поплавками, а не строки (например, 'X1.astype (np.complex)') –
X1.astype (np.complex) Traceback (самый последний вызов последнего): Файл " ", строка 1, в ТипError: требуется поплавок –
Talia
Что такое' X1' и откуда оно взялось? Почему он содержит строки в первую очередь? Основываясь на сообщении об ошибке, похоже, что в них содержатся скобки, то есть '' (27.6695554346-5.51875942715j) ", а не' "27.6695554346-5.51875942715j", которые препятствуют тому, чтобы numpy мог автоматически отбрасывать их комплексные поплавки. Вы не должны использовать строки для представления этого типа данных. –