distributionFitter: Lognormal distribution

Hi
I wanted to fit my Data to the lognormal distribution, but I get this error message : "The data in X must be positive".
I am pretty sure that the data and the frequency arrays are positive (>=0).
How can I ovecome this issue.

5 Commenti

Torsten
Torsten il 9 Feb 2023
Modificato: Torsten il 9 Feb 2023
Maybe there are NaN, Inf or -Inf values in your data vector ?
What does
any(Data(1,:) < 0)
return ?
Check it. We cannot because you didn't include the data.
>> any(Data(1,:) < 0)
ans =
logical
0
I did, none of the values is negative. Actually, Data represents the bin edges. So logically, it can be negative. This error pops up only with Lognormal distribution.
Torsten
Torsten il 9 Feb 2023
Modificato: Torsten il 9 Feb 2023
So you don't use the Data(1,:) directly to fit the lognormal distribution, but some preprocessed data that you don't know exactly ?
What about
any(Data(1,:) <= 0)
?
Yes, I found some zeros.
I have to remove these values to be able to fitt my data to the Lognormal distribution.
Thank you for your help
I predefined the bin edges. for some bins the count is 0. Thus, the error.

Accedi per commentare.

 Risposta accettata

I am pretty sure that the data and the frequency arrays are positive (>=0).
0 is not positive. What does this command show?
any(Data(1, :) == 0)

1 Commento

You are right. There are some zeros in my Data. I have to remove these values to be able to fitt my data to the Lognormal distribution.
Thank you for your help

Accedi per commentare.

Più risposte (0)

Prodotti

Release

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by