Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Regresja liniowa i gradient

Ostatnio zmodyfikowano 2015-06-12 19:15
Autor Wiadomość
vobiscum
Temat założony przez niniejszego użytkownika
Regresja liniowa i gradient
» 2015-06-11 21:02:44
Cześć,
mam pytanie/problem. Nie wiem od czego zacząć. Muszę napisać kod regresji liniowej i obliczyć gradient. Dane X i Y muszą być pobrane z pliku. Największy problem mam z wczytywaniem danych z pliku - żaden, który znalazłam nie zaciąga mi danych.

Jeżeli macie gdzieś podobny kod to proszę wstawcie.
P-133469
Monika90
» 2015-06-11 21:31:38
A w jakiej postaci są dane w pliku?

Jeżeli są to po prostu współrzędne oddzielone białymi znakami, to można w prosty sposób wczytać do wektora
C/C++
struct Point { double x, y; };

//...

std::vector < Point > points;
Point p;
while( file >> p.x >> p.y )
     points.push_back( p );

P-133470
vobiscum
Temat założony przez niniejszego użytkownika
» 2015-06-11 21:47:22
[2548    13495
2548 16500
2823 16500
2337 13950
2824 17450
2507 15250
2844 17710
2954 18920
3086 23875
3053 23875
2395 16430...]
Tak to wygląda w pliku.
Dziękuję za informację, ale... nie umiem tego przełożyć z "polskiego na nasze".
Dopiero zaczynam. Czy miałabyś może jakiś podobny kod do takiego przykładu?
P-133471
Monika90
» 2015-06-11 22:19:06
C/C++
#include <iostream>
#include <fstream>
#include <vector>

struct Point { double x, y; };

int main()
{
    std::ifstream file( "plik.txt" );
    if( !file )
         std::cout << "nie dało się otworzyć pliku" << std::endl;
   
    char ch;
    file >> ch; //pomiń [
   
    std::vector < Point > points;
    Point p;
    while( file >> p.x >> p.y )
         points.push_back( p );
   
    std::cout << "ilość wczytanych punktów: " << points.size() << std::endl;
}
Ten kod powinien działać z Twoim przykładem, wczytuje on współrzędne do tablicy points. Ale samej regresji liniowej za Ciebie nie napiszę.
P-133473
vobiscum
Temat założony przez niniejszego użytkownika
» 2015-06-12 19:15:59
Dziękuję. Z regresją sobie poradzę :)
P-133492
« 1 »
  Strona 1 z 1