НумПи Најмањи квадрати

Numpi Najmani Kvadrati



Данас ћемо научити о најмањим квадратима у линеарним једначинама и како да применимо метод најмањих квадрата да би се регресиона линија најбоље уклапала у датим скуповима података. Али пре тога, хајде да добијемо основно знање о НумПи-у. НумПи је један од најбољих математичких пакета Питхон-а који пружа услуге за вишедимензионалне низове и матрице заједно са широким спектром сложених нумеричких операција које се могу изводити на овим матрицама/низовима.

Једна од метода Питхон-а лстск() се користи за проналажење линије регресије познате линеарне једначине ак=б која најбоље одговара овој једначини. То значи да морате да одредите линију која исправно показује однос између к и и тачака ако ваши подаци показују да постоји. Линија између обе тачке је позната као линија регресије када се користи за проналажење најмањег квадрата кроз ову једначину, ак=б.

Синтакса:

Почнимо да учимо стил имплементације функције линалг.лстск(). Прво, пишемо име библиотеке које користимо у Питхон-у, а које је „нумпи“. Затим спајамо функцију линалг() и спајамо функцију лстск(). Функција линалг() значи линеарну алгебру. Увек се користи са функцијом лстск() јер је то линеарни алгебарски израз. Након тога, прослеђујемо аргументе у заградама функције.









Параметри:

Хајде да разумемо параметре функције линалг.лстск():



тачка 1: То је матрица коефицијената.





тачка 2: Ова матрица или низ садржи зависне променљиве.

други: Његов тип података је флоат. рцонд однос служи као граница за мање сингуларне вредности тачке_1. Ако је сингуларна вредност мања од рцонд пута највећег сингуларног елемента тачке_1, сматра се нулом када се одређује ранг.



Повратна вредност:

Заузврат, добијамо најмањи квадрат познате променљиве к у једначини ак=б.

Пример 1:

Почнимо са имплементацијом нашег првог примера методе најмањег квадрата Питхон библиотеке, НумПи. Прво, потребан нам је Питхон компајлер да бисмо могли да кодирамо у њему. Отворите компајлер. Такође морате да инсталирате НумПи библиотеку јер користимо једну од функција НумПи-а, а то је функција лстск(). Затим морате увести пакет НумПи у њега. Прво напишите кључну реч „импорт” која говори компајлеру да ћемо увести пакет. Затим морамо да напишемо име пакета које користимо у функцији које је „нумпи“. А затим, такође пишемо алтернативно име НумПи „нп“ јер многи програмери користе овај приступ. Ово је добар приступ програмирању и штеди време.

Након увоза пакета, почињемо да пишемо стварну линију кода коју желимо да урадимо. Прво штампамо поруке тако да корисник може лако да разуме шта радимо у примеру помоћу наредбе принт(). Креирамо једнодимензионални низ „А“ користећи функцију арраи(), а затим га штампамо позивањем наредбе принт(). Затим креирамо још један једнодимензионални низ „Б“ користећи функцију арраи() и штампамо га помоћу функције принт().

увоз нумпи као на пример.

принт ( 'Имплементација методе најмањег квадрата у НумПи: ' )

А = на пример. низ ( [ 1 , два , 1 , 1 , 1 , два , два , 1 , 1 ] )

принт ( ' Низ А је: ' , А )

Б = на пример. низ ( [ 4 , 3 , 5 , 4 , два , 3 , 6 , 3 , два ] )

принт ( ' Низ Б је: ' , Б )

Икс = на пример. ланено семе . лстск ( на пример. встацк ( [ А , на пример. оне ( само ( А ) ) ] ) . Т , Б , рцонд = Ниједан ) [ 0 ]

принт ( ' Најмањи квадрат је: ' , Икс )

Након креирања обе тачке А и Б, имплементирамо функцију лстск(). Али прво, користимо функцију встацк() да сложимо елементе „А“, у низу. Затим узимамо транспоновање низа „А“. Затим, прослеђујемо функцију встацк() као први аргумент функције лстск(). Други аргумент је низ „Б“, а трећи аргумент је „рцонд“ у којем постављамо вредност рцонд као „ноне“. Затим, чувамо целу функцију у другом низу под називом „к“ што показује да је то позната променљива линеарна једначина, ак=б. Након овога, приказујемо резултате тако да користимо наредбу принт() за ово и прослеђујемо „к“ низ у њега.

Пример 2:

Сада, хајде да почнемо да примењујемо још један пример НумПи најмањих квадрата. Увек прво увозимо библиотеку коју користимо у програму који је НумПи. Прво пишемо кључну реч „импорт” да бисмо добили пакет у програму. Такође пишемо име пакета које је 'нумпи', а затим његов алиас, 'нп'. Затим позивамо метод принт() да бисмо могли да прикажемо поруку најмањих квадрата која се може поново приказати ради бољег разумевања корисника.

Затим креирамо име низа „к_акис“ и чувамо низ у њему помоћу функције аранге(). Затим га штампамо помоћу методе принт(). Затим креирамо друго име низа „и_акис“ и у њега складиштимо низ који смо креирали на следећој илустрацији.

Након креирања оба низа, имплементирамо оне() метод на низ к_акис и складиштимо га у други низ под називом „арраи_а“. И онда, такође штампамо овај низ. Креирамо још један низ под називом „арг_рег_лине“ и имплементирамо функцију линалг.лстск() на њему. Затим, прослеђујемо параметре овој функцији тако да можемо да добијемо најмање квадрате између два низа или тачке. Први параметар је да узимамо транспоновање низа_а. Други параметар је друга тачка која је и_оса. Затим имамо „рцонд“ који садржи вредност „ноне“. Затим приказујемо низ помоћу методе принт().

увоз нумпи као на пример.

принт ( 'Имплементација функције линалг.лстск(): ' )

к_акис = на пример. аранге ( 0 , 10 )

принт ( ' Вредност к осе је: ' , к_акис )

и_акис = [ 10.3 , 10.5 , Једанаест , 11.5 , 13.2 , 13.9 , 14 , 15.5 , 16.6 , 17 ]

принт ( ' Вредност и осе је: ' , и_акис )

арраи_а = на пример. низ ( [ к_акис , на пример. оне ( 10 ) ] )

принт ( ' Низ је: ' , арраи_а )

арг_рег_лине = на пример. ланено семе . лстск ( арраи_а. Т , и_акис , рцонд = Ниједан ) [ 0 ]

принт ( ' Параметри регрсионе линије су: ' , арг_рег_лине )

рег_лине = арг_рег_лине [ 0 ] * к_акис + арг_рег_лине [ 1 ]

увоз матплотлиб. пиплот као плт

плт. плот ( к_акис , рег_лине , 'р-' )

плт. плот ( к_акис , и_акис , 'О' )

плт. наслов ( 'Линија линеарне регресије' )

плт. клабел ( 'Кс-оса' )

плт. илабел ( 'И-оса' )

плт. Прикажи ( )

Ево излаза претходно имплементираног примера:

Увозимо други пакет НумПи-а који је пакет „матплотлиб“ који се користи за цртање графикона. Затим исцртавамо вредности к_акис и и_акис_валуес. Затим постављамо наслов и ознаке графикона. На крају, приказујемо графикон помоћу методе схов().

Ево жељеног графикона датог примера:

Закључак

У овом чланку смо научили шта је најмањи квадрат и како добијамо линалг.лстск() непознате променљиве к користећи линеарну једначину ак=б. Користили смо више функција НумПи-а за проналажење најмањих квадрата и имплементирали неке примере са детаљним објашњењима за боље разумевање корисника.