or slightly shorter:
using GeophysicalModelGenerator, DelimitedFiles
data=readdlm("1_test_peakdelay.txt",',','\n', skipstart=0,header=false);
lon,lat,depth = data[:,1], data[:,2], data[:,3];
peakdelay = data[:,4];
res = (length(unique(lon)), length(unique(lat)), length(unique(depth)))
Lon = zeros(res);
Lat = zeros(res);
Z = zeros(res);
Peakdelay = zeros(res);
num = 1
for i in 1:res[2], j in 1:res[1], k in 1:res[3]
I = CartesianIndex(i,j,k)
Lon[I], Lat[I], Z[I] = lon[num], lat[num], depth[num];
Peakdelay[I] = peakdelay[num];
num += 1
end
EQ_Data = GeoData(Lon,Lat,Z,(; Peakdelay,));