set _cmd=%1 set _java="C:\Program Files\Java\jdk1.8.0_60\bin\javaw.exe" if "%_cmd%"=="" set _cmd=default if "%_cmd%"=="-h" set _java="C:\Program Files\Java\jdk1.8.0_60\bin\java.exe" %_java% -classpath . RunWeka -i .\RunWeka.ini -w .\weka.jar -c %_cmd% "%2"
"c:\Program Files\Java\jdk1.8.0_60\bin\java.exe"
Poniżej zamieszczony kod może posłużyć do wizualizacji danych.
data=
fy=2.3702*fx+6.1973
. Oczywiście 2.3702
i 6.1973
to parametry wyznaczone podczas regresji# %matplotlib notebook import matplotlib.pyplot as plt import numpy as np from scipy import stats from io import StringIO from sklearn import linear_model # Można zmienić rozmiary rysunku # plt.rcParams["figure.figsize"] = (10,10) data = """ 0.246939,9.011391 0.895519,8.950505 0.971588,9.671047 1.188316,14.735488 1.741884,10.265625 2.196002,13.501097 2.637403,13.887849 2.788188,17.180626 3.50202,19.321529 """ #enter data as a string inp = StringIO(data) x, y = np.loadtxt(inp, delimiter=',', usecols=(0, 1), unpack=True,skiprows=0) plt.scatter(x,y,s=80, marker='+') #plot function #fx - arguments #fy - values, #ftrue -function used to generate data fx=np.linspace(-10,60,100) fy=2.3702*fx+6.1973 ftrue=2.37*fx+7 plt.plot(fx,fy,linewidth=2,color='r') plt.plot(fx,ftrue,linewidth=1,linestyle='--',color='g') plt.xlim(-10,60) plt.grid(True) plt.xlabel('X') plt.ylabel('Y') r = stats.pearsonr(x, y)[0] plt.title('Regression $f_{true} = 2.37x+7$ r=' + str(r)) plt.show()
import statsmodels.api as sm # Dodaj kolumnę z jedynkami - patrz wykład 2 X_plus_one = np.stack( (np.ones(x.size),x), axis=-1) ols = sm.OLS(y, X_plus_one) ols_result = ols.fit() ols_result.summary()
Aby wynik wyświetlił się w osobnym oknie… Settings>Tools»Python Scientific» odznacz Show plots in tool window