you can change parts of a vector, but the vector inside the sf::Sprite class has restricted access and there is no setter method for only parts of it.
so you can change the source code to include these methods (overkill) OR you can do the way you did, which isn't inefficient at all.