Use data.update(newdata) instead of loop