Вопрос

Извините моего невежества, я очень новый для Python.Я пытаюсь выполнить анализ фактора в Python с использованием MDP (хотя я могу использовать другую библиотеку, если есть лучшее решение).

У меня есть m by n matrix (называемая матрицами), и я пытался сделать:

import mdp
mdp.nodes.FANode()(matrix)
.

Но я верную ошибку.Я предполагаю, что моя матрица не формируется должным образом?Моя цель - узнать, сколько компонентов находятся в данных и узнают, какие строки нагрузки на какие компоненты.

Вот трассировка:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "mdp/signal_node.py", line 630, in __call__
    return self.execute(x, *args, **kwargs)
  File "mdp/signal_node.py", line 611, in execute
    self._pre_execution_checks(x)
  File "mdp/signal_node.py", line 480, in _pre_execution_checks
    self.train(x)
  File "mdp/signal_node.py", line 571, in train
    self._check_input(x)
  File "mdp/signal_node.py", line 429, in _check_input
    if not x.ndim == 2:
AttributeError: 'list' object has no attribute 'ndim'
.

У кого-нибудь есть идеи, что происходит, и чувствовать, что объяснять его на питоне Newbie?

Это было полезно?

Решение

У меня нет абсолютно нет опыта с MDP, но похоже, что он ожидает, что ваши матрицы будут переданы как простое массив вместо списка.Numpy - это пакет для высокопроизводительных научных вычислений.Вы можете перейти к Numpy Домашняя страница и установить его.После этого попробуйте изменить свой код на это:

import mdp, numpy
mdp.nodes.FANode()(numpy.array(matrix))
.

Другие советы

Как сказал Стивен, данные должны быть начисления.Точнее оно должно быть 2D-массив, с первым индексом, представляющим различные SAMPES, и второй индекс, представляющий размеры данных (использование неправильного порядка здесь, может привести к ошибке «сингулярной матрицы»).

Вы также должны взглянуть на Документация MDP , которая должна ответить на все вашивопросов.Если это не поможет, есть список почтовых рассылок MDP.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top