मैं अपने होमवर्क के हिस्से के रूप में एफएफटी लागू कर रहा हूं। मेरी समस्या बिट रिवर्सल का उपयोग कर डेटा तत्वों को घुमाने के कार्यान्वयन में निहित है।केवल पूर्णांक, स्लाइस (`:`), इलिप्सिस (`...`), numpy.newaxis (`none`) और पूर्णांक या बूलियन सरणी वैध सूचकांक
DeprecationWarning: using a non-integer number instead of an integer will result in an error in the future.
data[x], data[y] = data[y], data[x]
और ऑटो ग्रेडिंग प्रणाली (विश्वविद्यालय द्वारा प्रदान की) रिटर्न निम्नलिखित: मैं निम्नलिखित चेतावनी मिलती है
error: only integers, slices (
:
), ellipsis (...
), numpy.newaxis (None
) and integer or boolean arrays are valid indices.
मेरे कोड है:
def shuffle_bit_reversed_order(data: np.ndarray) -> np.ndarray:
"""
Shuffle elements of data using bit reversal of list index.
Arguments:
data: data to be transformed (shape=(n,), dtype='float64')
Return:
data: shuffled data array
"""
# implement shuffling by reversing index bits
size = data.size
half = size/2;
for x in range(size):
xx = np.int(x)
n = np.int(half)
y = 0
while n > 0:
y += n * np.mod(xx,2)
n /= 2
xx = np.int(xx /2)
if (y > x):
data[x], data[y] = data[y], data[x]
return data
मैं पहले से ही लागू कर दिया है एफएफटी के लिए काम करें, लेकिन जब तक मैं इस शफल कार्य को काम नहीं कर लेता तब तक यह काम नहीं करेगा। मुझे लगता है कि समस्या यह है कि मेरा डेटा 'float64' प्रकार का है और मैंने इसे एक पूर्णांक के रूप में उपयोग किया होगा, लेकिन मुझे नहीं पता कि मैं इसे कैसे हल कर सकता हूं।
आपको त्रुटि मिलने पर 'y' का मान क्या है? – Barmar