If your data is on a regular grid, (even with holes/missing data), sorted by y and x (y primary), as from the python code below, then the data can be imported directly as a raster.
import numpy as np
x = np.array([(y, x, 1.0) for x in range(5328530,5328560,10) for y in range(4390000,4390100,10)])
x[:,2] = np.random.normal(size=x.shape[0])
np.savetxt("/Users/drf/data/foo.csv",x,header="x y z",comments='')
x y z
4.390000000000000000e+06 5.328530000000000000e+06 1.015328864588257662e+00
4.390010000000000000e+06 5.328530000000000000e+06 -5.628257535238548881e-01
4.390020000000000000e+06 5.328530000000000000e+06 -4.046038883206812820e-01
4.390030000000000000e+06 5.328530000000000000e+06 8.817873776115265905e-01
4.390040000000000000e+06 5.328530000000000000e+06 4.097001571760452432e-01
4.390050000000000000e+06 5.328530000000000000e+06 -7.780231463806006609e-01
4.390060000000000000e+06 5.328530000000000000e+06 1.276611440801514563e+00
4.390070000000000000e+06 5.328530000000000000e+06 1.487220007430405389e+00
4.390080000000000000e+06 5.328530000000000000e+06 -8.761006338524375270e-01
4.390090000000000000e+06 5.328530000000000000e+06 -1.859988973619862984e-01
4.390000000000000000e+06 5.328540000000000000e+06 -7.427614994399982240e-02
4.390010000000000000e+06 5.328540000000000000e+06 -9.425023376749808168e-01
4.390020000000000000e+06 5.328540000000000000e+06 1.323964776987769654e-01
4.390030000000000000e+06 5.328540000000000000e+06 8.889046410107322993e-01
4.390040000000000000e+06 5.328540000000000000e+06 2.653416825844922000e-01
4.390050000000000000e+06 5.328540000000000000e+06 4.796456869260552480e-01
4.390060000000000000e+06 5.328540000000000000e+06 -7.438068196825314837e-01
4.390070000000000000e+06 5.328540000000000000e+06 3.184221970890085962e-01
4.390080000000000000e+06 5.328540000000000000e+06 1.391780647464825327e+00
4.390090000000000000e+06 5.328540000000000000e+06 -7.167399876719116047e-01
4.390000000000000000e+06 5.328550000000000000e+06 -2.341421481517296233e+00
4.390010000000000000e+06 5.328550000000000000e+06 3.345464281172759735e-01
4.390020000000000000e+06 5.328550000000000000e+06 -1.494134402336438017e+00
4.390030000000000000e+06 5.328550000000000000e+06 2.142616394224636234e-01
4.390040000000000000e+06 5.328550000000000000e+06 2.857439432942754931e-01
4.390050000000000000e+06 5.328550000000000000e+06 -3.657708254450416363e-01
4.390060000000000000e+06 5.328550000000000000e+06 -5.120046389202982384e-01
4.390070000000000000e+06 5.328550000000000000e+06 4.942802209477887843e-01
4.390080000000000000e+06 5.328550000000000000e+06 2.181192673092847478e+00
4.390090000000000000e+06 5.328550000000000000e+06 -7.518000569745769690e-01
This data can be read directly from Layer/Add Layer/Add Raster Layer/ Dataset
tool.
If your data isn't a regular grid, and you already have the points imported as a layer, with the accurate fields, then the problem might not be with your data import, its with transforming the point data into a raster, as in Interpolation on set of points in QGIS or this QGIS tutoria. You should be able to use one of the interpolation tools Processing /(search 'interp')
tools like Processing/Interpolation/IDW Interpolation
, Processing/Interpolation/TIN Interpolation
, Processing/SAGA/Raster Creation/Interpolate
or others.