Транспортировка данных, не дающая ожидаемого результата

Я пытаюсь сделать очень простой пример в Scipy модуле Python для метода транспонирования, но не дает ожидаемого результата. Я использую Ipython с режимом pylab.

a = array([1,2,3] print a.shape >> (3,) b = a.transpose() print b.shape >> (3,) 

Если я печатаю содержимое массивов «a» и «b», они похожи.

Ожидание: (что приведет к трансформации Matlab om)

  [1, 2, 3] 

4 Solutions collect form web for “Транспортировка данных, не дающая ожидаемого результата”

Транспортировка transpose() Transform transpose() эффективно преобразует форму массива. Если массив одномерный, это означает, что он не действует.

В NumPy массивы

 array([1, 2, 3]) 

а также

 array([1, 2, 3]) 

на самом деле одинаковы – они только различаются в пробелах. Возможно, вам нужны соответствующие двумерные массивы, для которых transpose() будет работать нормально. Также рассмотрите тип matrix NumPy:

 In [1]: numpy.matrix([1, 2, 3]) Out[1]: matrix([[1, 2, 3]]) In [2]: numpy.matrix([1, 2, 3]).T Out[2]: matrix([[1], [2], [3]]) 

Обратите внимание, что для большинства приложений простой одномерный массив будет работать как вектор строки или столбца, но при numpy.matrix из Matlab вы можете использовать numpy.matrix .

Transpose – это noop для одномерных массивов.

Добавить новую ось и транспонировать:

 >>> a[None].T array([[1], [2], [3]]) >>> np.newaxis is None True 

Или измените форму:

 >>> a.reshape(a.shape+(1,)) array([[1], [2], [3]]) 

Или как @Sven Марнах предложил в комментариях добавить новую ось в конце:

 >>> a[:,None] array([[1], [2], [3]]) 

Вы должны попробовать: a = array([[1,2,3]]) или a = array([[1],[2],[3]]) , то есть a должна быть матрицей (вектор-строка, вектор столбца).

Более сжатый способ изменить 1D-массив в 2D-массив:

 a = np.array([1,2,3]), a_2d = a.reshape((1,-1)) or a_2d = a.reshape((-1,1)) 

-1 в векторе формы означает «заполнить любое число, которое делает эту работу»

  • Повышение точности numpy.dot (python)
  • передача аргументов функции для подгонки
  • Научные библиотеки для Lua?
  • Вычисление расстояний между уникальными областями массива Python?
  • Ортогональная дистанционная регрессия в python: значение возвращаемых значений
  • Переполнение в exp в scipy / numpy в Python?
  • Почему функция numpy random.choice () прекращена?
  • ImportError при импорте из sklearn: невозможно импортировать имя check_build
  •  
    Interesting Posts for Van-Lav

    Деревья регрессии или регресстор случайного леса с категориальными входами

    lxml xpath не игнорирует "& nbsp;"

    Как установить пакеты python без привилегий root?

    Установка пакетов python в nitrousio

    Вычислить средневзвешенное значение с помощью панды / данных

    Ошибка установки tweepy на окнах

    Matplotlib: добавьте строки как пользовательские x-тики, но также сохраните существующие (числовые) метки метки? Альтернативы matplotlib.pyplot.annotate?

    объединение значений для большого количества перекрывающихся интервалов словарных клавиш

    Ruby «эквивалентен»

    Как правильно использовать пользовательский __init__ класса приложения Python?

    «Уничтоженный» сигнал виджета не запускается (PyQT)

    Python MySQLdb: connection.close () VS. cursor.close ()

    python с использованием метода argparse.ArgumentParser

    Почему две из 6 встроенных констант назначаются?

    Как я могу разбивать большой файл csv на небольшие файлы на основе общих записей с помощью python

    Python - лучший язык программирования в мире.