I have a raster height model and would like to calculate the horizontal geographic direction (north, east, etc. - orientation) of each cell, then calculate then the mean value of all these cells in one region (polygon). This is to get information about to what direction a vineyard is exposed to. How do I do this?
The 'direction' you are referring to is known as the aspect of a slope. To calculate this for a raster DEM in QGIS you need to use the Raster > Analysis > DEM (Terrain models) tool which has a mode for aspect. There's a tutorial for working with terrain analysis in the QGIS Training Manual - lesson 8.3.
Once you've generated an aspect raster from your DEM, you can use the Raster Calculator and Zonal Statistics plugin to get the mean aspect value from your regions (zones). As whuber's comment points out this calculation is more complex than it initially sounds, and you can refer to his answer at Sum raster data visible from given point, by proportion of view for full details.
The values generated by the aspect analysis are angular (I believe clockwise from north, but you should confirm that). So if you want a N/E/S/W direction to that, you'll have to determine how fine you want to go (northwest or north-northwest) and then assign it based on the angular value.