Parcela liso de la función de distribución acumulativa usando MATLAB

¿Cómo es posible hacer las siguientes función de distribución acumulativa (CDF) de la curva más suave?

Aquí está mi código, mediante cdfplot:

clear all; 
close all;
y = [0.75862069 0.666666667 0.882352941 0.875 0.736842105 0.566666667 0.703703704 0.6 0 0.730769231 0.714285714 0.625 0.675 0.693877551 0.731707317 0.558823529 0.679245283 0.740740741 0.785714286 0.789473684 0.615384615 0.6 0.739130435 0.576923077 0 0.75];
cdfplot(y)

La trama parece:

Parcela liso de la función de distribución acumulativa usando MATLAB

  • ¿Qué has hecho en un intento de averiguar cual es el problema?
  • sí:los datos = [1 1 1 4 5]; %# datos de la Muestra p1 = cdf(‘Normal’,de datos,0,1); plot(p1);
  • Esto parece ser un CDF empírica y por lo tanto no suele ser suave, menos alterado.
InformationsquelleAutor ddayan | 2011-10-05

4 Kommentare

  1. 2
    data = [1 2 2 3 4];
    dsum = sum(data);
    normalized_data = data/dsum;
    
    cdf = data;
    
    for i = 1:length(data)
        cdf(i) = sum(normalized_data(1:i));
    end
    
    plot(cdf);

    ¿Es esto lo que buscas?

  2. 0

    Hay un método. Pero creo que esto es una especie de trampa. Usarlo con tu propia responsabilidad.
    usted puede tratar de cdfplot([x,x+a*randn(length(x),1)]). Se puede jugar con el parámetro a, pero te sugiero que al valor de uso, alrededor de 0.5. Saludos.

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea