Nur ganze Zahlen, Slices (':'), Ellipsen ('...'), numpy.newaxis ('None') und ganze oder boolesche Arrays sind gültige Indizes

9

Ich führe fft als Teil meiner Hausaufgaben ein. Mein Problem liegt in der Implementierung von Shuffling Datenelementen mit Bit-Umkehrung. Ich bekomme folgende Warnung:

  

DeprecationWarning: Die Verwendung einer nicht ganzzahligen Zahl anstelle einer Ganzzahl führt in Zukunft zu einem Fehler.

     

Daten [x], Daten [y] = Daten [y], Daten [x]

Und das Auto-Grading-System (von der Universität zur Verfügung gestellt) gibt folgendes zurück:

  

error: Nur ganze Zahlen, Slices ( : ), Ellipsen ( ... ), numpy.newaxis ( None ) und ganze oder boolesche Arrays sind gültige Indizes.

Mein Code ist:

%Vor%

Ich habe die Funktion für fft bereits implementiert, aber es wird nicht funktionieren, bis ich diese Mischfunktion funktioniere. Ich denke, das Problem ist, dass meine Daten vom Typ 'float64' sind, und ich habe es vielleicht als Integer benutzt, aber ich weiß nicht, wie ich es lösen kann.

    
Uttam 22.01.2016, 17:29
quelle

2 Antworten

15

Ich glaube, Ihr Problem ist folgendes: In Ihrer while-Schleife wird n durch 2 geteilt, aber nie wieder als ganze Zahl umgewandelt, so dass es irgendwann zu einem Float wird. Es wird dann zu y hinzugefügt, was dann auch ein Float ist, und das gibt Ihnen die Warnung.

    
L. Hovan 22.01.2016, 17:53
quelle
5

Sie können // anstelle von single / verwenden. Das konvertiert direkt in int .

    
Sarvagya Gupta 22.05.2017 04:15
quelle

Tags und Links