Python වැඩ්ඩො ඉන්නවද?

Heshankavindu

Active member
  • Jan 25, 2009
    995
    59
    28
    a + b(x) + c(x^2) + d(x^3) + . . . .
    මෙහෙම x වල උඹට කැමති හිතෙන බලේකට යනකං හදාගෙන brute force එකෙං වගේ a b c d වලට දාන්න පුලුවන් හැම combination එකක්ම දදා ඒ ඒ combination එකට උඹ ගාව තියෙන data දාල ලැබෙන්න ඕනෙ වක්‍රෙ එනවද කියල බැලුවද ? :sorry: :sorry:
    දන්න තරමින්නං කරන්න ඕනෙ ඔහොම තමා තව ක්‍රම තියෙනවද දන්නෑ :sorry: :sorry:
    stackoverflow වල අහපං දන්න උන් ඇති:yes: :yes:

    මේකයි බන් මම ඇත්තටම දන්නෙ නැහැ එන්න ඕනි වක්‍රය ගැන. දන්නෙ ඩේටා සෙට් එක විතරයි. ඉතින් බන් එනම් කරන්න ඕනි ඔය ඩේටා සෙට් එක පොල්ය්නෝමියල් එකට දැම්මම එන උත්තරේ 0 ද බලන එක. ඊට ලේසි විදියක් ඇති කියලයි මම ඕක දැම්මෙ. මේමයි බන් එක්සෙල් වලින් තමා මම ඔය උඩ ( ෆොටෝ එක ) එක ගත්තෙ. වයිවා එකේ එක්සෙල් වලින් කලා කිව්වොත් අනිව මාව බල්ල ගානට දානව. ඒකයි බන් විදියක් හෙව්වෙ Python වලින් කරන්න.
     
    Last edited:

    WhiteWalker

    Member
    Sep 15, 2015
    18,612
    1,328
    0
    16
    North
    kawda bn wedima balaya mokakda kiyala danne. :baffled:
    andala balanna wei mona jaathiye hedayakda kiyala. eeta passe danna (x,y) kandaanka aadesha karala ne hoyanna wenne.

    දන්නෑ ආසන්න වශයෙන් x වල 10ට වගේ එනකං හෙව්වාම ඇති වෙයි :yes: :yes:
    එක එක අගයන් දදා වැඩිම ඩේට ප්‍රමාණයක් වක්‍රෙත් එක්ක ලඟින් යනකං අගයන් හොයන්න වෙනව :sorry: :sorry:
    නැතුව ගහෙන් ගෙඩි හෙන්නැහෙ function හිතන්න බෑනෙ බං :sorry: :sorry:

    මේකයි බන් මම ඇත්තටම දන්නෙ නැහැ එන්න ඕනි වක්‍රය ගැන. දන්නෙ ඩේටා සෙට් එක විතරයි. ඉතින් බන් එනම් කරන්න ඕනි ඔය ඩේටා සෙට් එක පොල්ය්නෝමියල් එකට දැම්මම එන උත්තරේ 0 ද බලන එක. ඊට ලේසි විදියක් ඇති කියලයි මම ඕක දැම්මෙ. මේමයි බන් එක්සෙල් වලින් තමා මම ඔය උඩ ( ෆොටෝ එක ) එක ගත්තෙ. වයිවා එකේ එක්සෙල් වලින් කලා කිව්වොත් අනිව මාව බල්ල ගානට දානව. ඒකයි බන් විදියක් හෙව්වෙ Python වලින් කරන්න.

    මං නං කියන්නෙ x වල 10 වෙනි බලේට වගේ එනකං දාගෙන coefficients ටිකට තෝරගත්ත පරාසෙක අගයන් දදා බලපං :yes: :yes:
    ඒ ටිකෙන් එන ප්‍රස්ථාර වලිං ගැලපෙනම එක තෝරගන්න ඕනෙ :yes: :yes:
    https://en.wikipedia.org/wiki/Taylor_series
    මේක කියෝල බලන්න :yes: :yes:
     

    NEMISIS

    Well-known member
  • Nov 13, 2013
    11,397
    19,535
    113
    Colombo
    Data Set 1
    3.878117483
    3.752024414
    3.535780834
    3.205215931
    3.024816319
    2.627730805
    2.42909089
    2.200281917
    1.959354628
    1.875013261
    1.567703677
    1.447164504

    Data Set 2
    0.783998575
    0.211088759
    0.120622516
    -0.325677765
    -0.470417935
    -0.82620818
    -1.043270986
    -1.260303847
    -1.314556653
    -1.736434965
    -2.109942848
    -2.711983467

    මචන් මේ ඩේටා සෙට් දෙක අතර මේ විදියට සම්බන්ධයක් තියනවාද
    Data set 1 represents series of y value, data set 2 represents x, where y = f(x), or vise versa
    example,
    3.878117483 = f(0.783998575)
    3.752024414 = f(0.211088759)
    3.535780834 = f(0.120622516)

    එහෙම නැත්නම් වෙන වෙන ඩේටා සෙට් දෙකක් ද?

    මට හිතෙන විදියට මෙතන දාල තියෙන්නෙ අවස්තා දෙකකදි ගනිපු y, වැලියු එක, ඒ කියන්නෙ f(x) කියන එක, x වැලියු සෙට් එක මොකද්ද

    හොයන්න ඕන වෙන්නෙ f

    ඉමේජ් එක අනුව හිතුවොත්
    Distance කියන්නෙ මොන සෙට් එකද Angle කියන්නෙ මොන සෙට් එකද
    එහෙම නැත්නම් මෙතන තියෙන්නෙ Distance හරි Angles හරි සෙට් දෙකක්ද, එහෙම නම් අනික් පැරාමීටරේ වැලියු එක මොකද්ද (මෙතන තියෙන්නෙ ඩිස්ටන්ස් එක නම් කෝ ඇන්ගල් එක)
     
    Last edited:

    Heshankavindu

    Active member
  • Jan 25, 2009
    995
    59
    28
    Ureka Ureka

    # In[1]:

    from numpy import *


    # In[12]:

    x = array([1,2,3,4,5,6,7,8,9,10,11,12])
    y = array([0.783,0.211,0.120,-0.325,-0.470,-0.826,-1.043,-1.260,-1.314,-1.736,-2.109,-2.711])


    # In[3]:

    from scipy.interpolate import *


    # In[15]:

    p4 = polyfit(x,y,4) //fit our data(x,y) to a fourth degree polynomial


    # In[16]:

    print (p4)


    # In[6]:

    from matplotlib.pyplot import *


    # In[7]:

    %matplotlib inline


    # In[17]:

    plot(x,y,'o') //this is the plot of our data set


    # In[18]:

    plot(x,y,'o')
    xp = linspace(0,12,1000) //devided the x line into 1000 parts for smooth p4 line by makeing an array
    plot(xp,polyval(p4,xp),'b--') //plot p4 with xp, b=blue and --=dash line