Comment ajouter un scalaire, un tableau numpy dans une gamme spécifique?

Est-il plus simple et plus efficace en terme de mémoire de manière à effectuer les opérations suivantes dans numpy seul.

import numpy as np
ar = np.array(a[l:r])
ar += c
a = a[0:l] + ar.tolist() + a[r:]

Il peut sembler primitif, mais il implique l'obtention d'une subarray copie du tableau donné, puis de préparer deux autres exemplaires de la même chose à ajouter à gauche et à droite de la direction en plus de l'scalaire ajouter. J'espérais trouver plus optimisé façon de le faire. Je voudrais une solution qui est complètement en Python de liste ou de tableau NumPy, mais pas les deux comme la conversion d'une forme à une autre, comme illustré ci-dessus pourrait causer de sérieux généraux où les données est énorme.

  • Si vous souhaitez ajouter c à une tranche de a en place... ne a[l:r] += c de travail pour votre exemple (en supposant a est un tableau NumPy)?
  • Oui. C'est l'idée.
InformationsquelleAutor | 2015-09-12