I'm trying to fit the GAMLSS library's Sichel distribution to some zero-truncated data, but the only way to get the function to work is to include the zero-class anyway but give it a frequency of 0, which doesn't take into account the zero-truncated nature of my data. Can anyone suggest a way to properly "redistribute" the zero-class's probability to the remaining probabilities (or some other, better, course of action using Sichel)?
If you run the following example, you'll see that sum(pdf2)
equals 1, but that the zero class that has a probability in my case of 0 is still allocated around 27% of the cum probability:
Counts = data.frame(n = c(0,1,2,3,4,5,6,7,8,9,10),
freq = c(0,182479,76986,44859,24315,49,100,490,106,0,2))
gamlss(n~1,family=SICHEL, control=gamlss.control(n.cyc=50),data=Counts )
pdf2 = dSICHEL(x=with(Counts, n), mu = 1.610, sigma = 98.43, nu = 3.315)
print( with(Counts, cbind(n, freq, fitted=pdf2*sum(freq))), dig=9)
sum(pdf2)