You can use the setValues function to assign values to a Raster* object. While you can access the 'values' slot of the objects directly, you would do that at your own peril because when setting values, multiple slots need to be changed; which is what these functions do.
Usage
# S4 method for RasterLayer
setValues(x, values, ...)
# S4 method for RasterBrick
setValues(x, values, layer=-1, ...)
# S4 method for RasterStack
setValues(x, values, layer=-1, ...)
# S4 method for RasterLayerSparse
setValues(x, values, index=NULL, ...)
values(x) <- value
Arguments
x
A Raster*
values
Cell values to associate with the Raster* object. There should be values for all cells
value
Cell values to associate with the Raster* object. There should be values for all cells
layer
Layer number (only relevant for RasterBrick and RasterStack objects). If missing, the values of all layers is set