» Poradna » Programy

Výpočet

avatar
 | Microsoft Windows 7 Chrome 52.0.2743.116

Ahoj,potřeboval bych poradit jak vyřešit následující výpočet. Nemyslím ani tak aby mi to někdo přímo napsal, to bych sice uvítal, ale zkusil bych to klidně i sám.Pokusím se stručně nastínit o co jde a zjednodušším to, problém je, že s VB vůbec neumím.V prvním sloupci mám naměřené hodnoty nějakého prvku, tzn. co řádek to určitá hodnota, jak to šlo v čase. Pro každý tento řádek pak mám vedle toho v dalších 4 sloupcích 4 nějaké koeficienty, označme je třeba A, B, C a D. Z těchto 4 koeficientů potřebuju vypočítat jeden finální, tzn. zase pro zjednodušení, třeba pomocí A+B+C+D. Takže mám v prvním řádku třeba hodnotu 15 pro tu naměřenou hodnotu a v dalších 4 sloupcích vedle toho třeba koeficienty 2, 3, 4, 5. Výsledný koeficient by pak byl logicky 14. No a takto mám těch řádků mraky.No a teď co potřebuju. Potřebuju najít co nejvýhodnější kombinaci výpočtu toho koeficientu finálního. Potřebuju zjistit co nejlepší váhový poměr těch koeficientů do toho finálního výpočtu, čili to ručně udělám tak, že si dám pro začátek jednoduše všechno váhově shodně (A+B+C+D) a vypočítám finální. No a potom vezmu v excelu sloupec naměřený, sloupec koeficientu a vypočítám si korelační koeficient.Ten koeficient z těch 4 se tedy dá napsat jako:x*A + y*B + z*C + w*D = finální koeficientA já potřebuju najít indexy x,y,z,w, tak, aby ta korelace s naměřeným prvkem byla co nejlepší, tzn. kor. koef. co nejvyšší se sloupcem ve kterém jsou ty naměřené hodnoty.Moje idea byla zkusi to pro každý koeficient v kombinaci tak do 50, čili nějaký zřetězený for/while cyklus. Jenže se mi to ve VB nějak nepodařilo dát dohromady. Uměl bych to udělat v PHP a MySQL, jenže problém je v tom, že MySQL neumí počítat korelace, dá se na to napsat funkce v PHP, ale je to pak hrozně pomalé, protože se pracuje s velkým množstvím dat řádek po Ukázat celý příspěvek

Mohlo by vás také zajímat

Odpovědi na otázku

 |   |  Microsoft Windows 7 Firefox 47.0

Když neumíš programovat v ničem jiném, zkus se třeba podívat na Excel Solver.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Chrome 52.0.2743.116

Není mi úplně jasné, co vlastně chceš počítat. Nicméně, korelační koeficienty se nepočítají nějakým postupným zkoušením, ale jsou na to vzorce. V těch vzorcích figurují součty a ty se pak cyklem počítají. Hledej něco jako metoda nejmenších čtverců nebo prostě vzorce pro korelační koeficienty.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 8 Opera 9.80

tohle ti možná pomůžehttp://chemistry.oregonstate.edu/courses/ch361-464/ch464/R... popř. můžeš hledat postup zadáním multiple regression excel

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
 | Microsoft Windows 7 Chrome 52.0.2743.116

OK, zkusím to upřesnit, takže postupuju takto, mám řádky např, následovně10:00 15 20 30 40 50 14010:30 12 15 15 20 20 70To jsem si čistě vymyslel, ale - v sloupci jedna je čas, ten není podstatný. Sloupec dva je ta naměřená hodnota (15, 12,...), dále jsou ty čtyři koeficienty pro každý řádek a konečný sloupec je ten výsledný koeficient. V tom příkladu výše jsem použil tu metodu stejného váhového poměru všech koeficientů. Následně si pak spočítám vždycky korelaci mezi sloupcem naměřeným a sloupcem výsledného koeficientu (poslední sloupec).A teď třeba změním váhu tak, že koeficientu A dám dvojnásobný význam a proto ho do finálního koeficientu vždy přičtu dvakrát. A opět se podívám na korelaci. No a potřebuju vyzkoušet různé poměry váhové významnosti pro všechny koeficienty tak,aby byla korelace pokud možno co nejvyšší

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Chrome 52.0.2743.116

hodně štěstí s výpočtem majícím nekonečně mnoho kombinací.akorát nevím, jak poznáš, kdy ukončit výpočet, protože nebudeš mít jistotu, že ten následující výpočet nebude korelovat ještě lépe. Abys to pochopil- náhodou natrefíš, že koeficient A má hodnotu 1,003, ale jak budeš vědět, že 1,00332 nebude ještě lepší?Z hlediska pravděpodobnosti máš jen nicotnou šanci, že se trefíš, neboť existuje pouze jedná správná kombinace, avšak těch nesprávných je mnohem více- takže máš šanci 1 ku nekonečnu, že se trefíš.Koeficienty A-D nemusejí být celá čísla nebo celočíselné násobky, naopak- budou nabývat jakékoliv hodnoty z oboru reálných čísel.

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
 | Microsoft Windows 7 Chrome 52.0.2743.116

No, ona ta korelace nikdy nebude 1, cílem bylo zkusit X kombinací a vybrat tu nejlepší. Ale díval jsem se teď na netu a bude jednodušší to udělat pomocí Regrese. Našel jsem si k tomu návod, já jsem neměl aktivovaný ten paket Datová analýza v Excelu, teď jsem to aktivoval a tím to udělám jinak.Díky všem za tipy

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Firefox 48.0

Koeficienty spočítáš normální lineární regresí s nulovým absolutním členem.Zapni si v Excelu doplněk Analytické nástroje.Na kartě Data klikni na novou ikonu Analýza dat.Z nabídky v okně vyber Regrese, klikni OK.V okně pak zadej:- vstupní oblast Y = sloupec dat s naměřenými hodnotami- vstupní oblast X = čtyři sloupce dat s koeficienty- zatrhni "Konstanta je nula"- zatrhni Hladina spolehlivosti, nechej 95 %- výstupní oblast = vyber volnou buňku (např. vedle sloupců)Potvrď OK.Ve výstupní obalsti se objeví tabulka se spoustou hodnot, tebe budou zajímat hodnoty ve sloupci "Koeficienty" pro jednotlivé regresory, označené "Soubor X 1" až "Soubor X 4". Hodnoty koeficientů jsou ty tvoje hledaná čísla pro jednotlivé sloupce.

Souhlasím  |  Nesouhlasím  |  Odpovědět

Související témata: Koeficient, Korelace, Zjednodušení