Sovitus dataan

Tietääkö joku millä softalla voi sovittaa vaikkapa normaalijakauma datapisteisiin, jossa näkyy vaikkapa noin normaalijakautunut huippu? Matlab ei käy, koska ei ole rahaa kaupallisiin softiin, pitäisi olla Linuxilla pyörivä softa. Ohjelman täytyy myös osata laskea sovituksen parametrien virhearviot.

Tiedän vastauksen itse, mutta luulen että tällä palstalla pyörii niin vitun epäpätevää porukkaa, ettei ole tosikaan.
12127
Äänestä

Muut lukivat myös

Vastaukset 12

Vanhimmat

No, itse olen laskenut matematiikka noin 20 vuotta, enkä osaa tuohon vastata.

Äänestä

Tunnustetaan, olen käyttänyt Exceliä laskujen tekoon, se antaa vääriä vastauksia, mutta ei ole ihan ammattiylpeyttä korjata asiaa.

Äänestä
  • Vitun pellet!!!

    Äänestä

Itselläni tohtorin tutkinto matematiikassa, mutta ongelma on minulle ylivoimainen. Ehdottaisin että vaikka Banachin kiintopistelausetta käytät, ja siinä se spiraali menee sisäänpäin, ja sovituksen saa samalla. L2-normia ehdotan mitaksi. Älä vedä data logaritmin läpi, ja polynomisovituksella sitten, koska en osaa sanoa toimiiko.

Äänestä

Laske otoksen keskiarvo ja hajonta ja ota niitä vastaava normaalijakaantuma.

Äänestä
  • Voi perkele!
    Eihän sitä noin tehdä. Vaaditaan epälineaarinen sovitus, se on monen muuttujan optimointiongelma.

    Äänestä

Varmaan Sagella onnistuu.

Äänestä
  • Ei käy. Te epäonnistuitte kaikki, kuten arvasinkin. Homma käy näin yksinkertaisesta gnuplotilla:

    esim:
    f1(x) = 1/((sqrt(2*pi)*rho))*exp(-((x-my)**2)/(2*rho**2))+c
    rho = 1; my = 0.5; c = 2
    fit f1(x) 'foo' using 1:2 via rho, my, c

    missä 'foo' on data (x,y-tiedosto), johon normaalijakauma sovitetaan. Alkuarvaukset on tuossa annettu myös.

    Tulokseksi tulee esim.:

    Final set of parameters Asymptotic Standard Error
    ======================= ==========================

    rho = 0.537129 +/- 0.007918 (1.474%)
    my = 0.00391748 +/- 0.009035 (230.6%)
    c = 0.277775 +/- 0.00601 (2.164%)

    Äänestä

  • asiantuntija. kirjoitti:

    Ei käy. Te epäonnistuitte kaikki, kuten arvasinkin. Homma käy näin yksinkertaisesta gnuplotilla:

    esim:
    f1(x) = 1/((sqrt(2*pi)*rho))*exp(-((x-my)**2)/(2*rho**2))+c
    rho = 1; my = 0.5; c = 2
    fit f1(x) 'foo' using 1:2 via rho, my, c

    missä 'foo' on data (x,y-tiedosto), johon normaalijakauma sovitetaan. Alkuarvaukset on tuossa annettu myös.

    Tulokseksi tulee esim.:

    Final set of parameters Asymptotic Standard Error
    ======================= ==========================

    rho = 0.537129 +/- 0.007918 (1.474%)
    my = 0.00391748 +/- 0.009035 (230.6%)
    c = 0.277775 +/- 0.00601 (2.164%)

    No, tuloksia voi laskea monella ohjelmalla. Minusta Sage on ihan yhtä pätevä laskuihin kuin Gnuplot. Olisi kiva kuulla perustelut sille, miksi Sage ei käy tuohon tarkoitukseen.

    Äänestä

  • asiantuntija. kirjoitti:

    Ei käy. Te epäonnistuitte kaikki, kuten arvasinkin. Homma käy näin yksinkertaisesta gnuplotilla:

    esim:
    f1(x) = 1/((sqrt(2*pi)*rho))*exp(-((x-my)**2)/(2*rho**2))+c
    rho = 1; my = 0.5; c = 2
    fit f1(x) 'foo' using 1:2 via rho, my, c

    missä 'foo' on data (x,y-tiedosto), johon normaalijakauma sovitetaan. Alkuarvaukset on tuossa annettu myös.

    Tulokseksi tulee esim.:

    Final set of parameters Asymptotic Standard Error
    ======================= ==========================

    rho = 0.537129 +/- 0.007918 (1.474%)
    my = 0.00391748 +/- 0.009035 (230.6%)
    c = 0.277775 +/- 0.00601 (2.164%)

    Taisit itsekin epäonnistua. :) Jotta f1(x) = 1/((sqrt(2*pi)*rho))*exp(-((x-my)**2)/(2*rho**2)) c olisi normaalijakauma, olisi oltava c=0. Eli ilmeisesti kyseessä on joku henkilö, joka ei tajua edes normaalijakauman määritelmää. Tällöin on turha tulla palstalle avautumaan siitä, miksi kukaan ei löydä softaa, jos kerran vääriä tuloksia pitää tehdä.

    Ja muuten, Gnuplot sisältyy Sageen.

    Äänestä

R

Tuo on ilmainen ja kohtuullisen helppokäyttöinen. Hyvin saa piirreltyä vaikka minkälaisia kuvioita.

Äänestä

Kommentoi aloitusta


asiantuntija. kirjoitti:

Tietääkö joku millä softalla voi sovittaa vaikkapa normaalijakauma datapisteisiin, jossa näkyy vaikkapa noin normaalijakautunut huippu? Matlab ei käy, koska ei ole rahaa kaupallisiin softiin, pitäisi olla Linuxilla pyörivä softa. Ohjelman täytyy myös osata laskea sovituksen parametrien virhearviot.

Tiedän vastauksen itse, mutta luulen että tällä palstalla pyörii niin vitun epäpätevää porukkaa, ettei ole tosikaan.

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu