Я использую последнюю версию numpy/scipy.
Следующий скрипт не работает:fftshift сломанный в scipy?
import numpy as np
import matplotlib.pyplot as plt
from scipy.fftpack import fft, fftshift, fftfreq
hn= np.ones(10)
hF = fft(hn,1024)
shifted = fftshift(hF)
Это дает следующее сообщение об ошибке:
Traceback (most recent call last):
File "D:\deleteme\New3.py", line 6, in <module>
shifted = fftshift(hF)
File "C:\Python26\lib\site-packages\numpy\fft\helper.py", line 40, in fftshift
y = take(y,mylist,k)
File "C:\Python26\lib\site-packages\numpy\core\fromnumeric.py", line 103, in take
return take(indices, axis, out, mode)
TypeError: array cannot be safely cast to required type
EDIT: я нашел эту проблему. Мой интерпретатор python был неявно вызван (через настройки моего редактора) с параметром -Qnew. Это, по-видимому, нарушает скудный код. Спасибо всем, кто ответил!
Прекрасно работает для меня. Вы уверены, что код скопирован правильно? – katrielalex
Также отлично работал для меня. Я использую последние версии выпусков Numpy (1.5.0b1) и Scipy (0.8.0rc3). –