Ich habe einen 2-D-numpy Array dieser Form:Schiebefenster aus 2D-Array, das einer 3D-Anordnung entlang der Achse = 0 oder Reihen gleitet geben
[[ 0. 1. 2. 3. 4.]
[ 5. 6. 7. 8. 9.]
[ 10. 11. 12. 13. 14.]
[ 15. 16. 17. 18. 19.]
[ 20. 21. 22. 23. 24.]
[ 25. 26. 27. 28. 29.]
[ 30. 31. 32. 33. 34.]
[ 35. 36. 37. 38. 39.]
[ 40. 41. 42. 43. 44.]
[ 45. 46. 47. 48. 49.]]
I eine Ansicht der Anordnung konstruieren will, Gruppierung seiner Elemente in einem beweglichen Fenster (in meinem Beispiel Größe 4). Mein Ergebnis sollte (6, 4, 5)
der Form sein, und ich kann es konstruieren wie folgt:
res = []
mem = 4
for i in range(mem, X.shape[0]+1):
res.append(X[i-mem:i, : ])
res = np.asarray(res)
print res.shape
Ich möchte Umschichtung vermeiden, so frage ich mich, ob ich eine Ansicht konstruieren kann dieses Ergebnis zu geben, mit as_strided zum Beispiel.
Eine Erklärung des Prozesses ist sehr willkommen.
Dank
Vielen Dank Divakar! – volatile