Efficent way to update/replace small set of vertices in 3D model?

Dear subscribers

I'm currently working on an application that will be feed 3D data
continuously from an external data source. This data is slightly noisy and
my task is to, preferably in real time, filter this noisy data and present
a noise reduced model to the operator. Slightly simplified, I'll
recalculate the model in the volume adjacent to the location of the new
sample and the updates the model, i.e. the update of the model is local.

In my current prototype I've used a vertex buffer which I continuously
update with the newly calculated vertices (and replaces the old ones
updated by the calculation) using the SetData() method but I assume that
this isn't very efficient since basically I replace the complete model in
the buffer each time. I realize that my problem is slightly different from
the usual way of using Direct3D where the model vertices/meshes are more
or less static.

My question is, is there an efficient way to update/replace a small set of
vertices in a much larger set of vertices?

Kind regards, Ola Theander