Az 2. házi feladat megoldásairól

1. Készítsen 100 elemű véletlen listát. Határozza meg minél több lokációs (közepek, medián, módusz) és szóródási paraméter (mintaterjedelem, szórási együttható, szórás és szórásnégyzet,  interkvartilis félterjedelem, csúcsosság, átlagos abszolút eltérés stb.) értékét ennél a listánál.

Bánóczy Gergely

r=RandomReal[1000,100];
Mean[r]
Median[r]
Commonest[r];

A módusznak (commonest) itt nincs sok értelme, mind egymástól különböző, valós szám van a listában.

RootMeanSquare[r]
TrimmedMean[r]
HarmonicMean[r]
GeometricMean[r]
ContraharmonicMean[r]

Sort[r]

Variance[r]
StandardDeviation[r]
Max[r]-Min[r]
StandardDeviation[r]/Mean[r]
Kurtosis[r]
QuartileDeviation[r]
MeanDeviation[r]

Hegedűs Ádám

lista1=Table[RandomReal[{-10,10}],{100}];

Mean[lista1]

GeometricMean[lista1]

HarmonicMean[lista1]

Median[lista1]

MedianDeviation[lista1]

Quartiles[lista1]

InterquartileRange[lista1]

QuartileDeviation[lista1]

StandardDeviation[lista1]

Holló Gábor

Clear[rnd]
rnd = RandomInteger[{0,10},100];
Commonest[rnd]

Tally[rnd]

Histogram[rnd]

Clear[rnd]
rnd =RandomReal[{0,1},100];
Mean[rnd]
Median[rnd]
Length[rnd]
StandardDeviation[rnd]/Mean[rnd]
StandardDeviation[rnd]
Variance[rnd]
QuartileDeviation[rnd]
Kurtosis[rnd]

(*ferdeség*)
Skewness[rnd]

Total[Abs[Mean[rnd]-rnd]]/Length[rnd]

MedianDeviation[rnd]

MeanDeviation[rnd]

Nagy Gábor

Normál eloszlású véletlen valós szám N(1, 3)

data = RandomVariate[NormalDistribution[1,3],1000];

Átlag

Mean[data]

Medián

Median[randdata]

Median[data]

Levágott átlag

TrimmedMean[data,0.10]

Módusz

Commonest[Round[data]]

Minta terjedelem

Max[data] - Min[data]

Szórás

StandardDeviation[data]

Variancia

Variance[data]

Interkvartilis terjedelem

InterquartileRange[data]

Átlagos abszolút eltérés

Mean[Abs[data-mean]]

Medián eltérés

MedianDeviation[data]

Ferdeség

Skewness[data]

Csúcsosság

Kurtosis[data]

Tóth Krisztián

ClearAll[list,dev];
list=Table[Random[Integer, {0,100}],{1000}];

Lokációs paraméterek

Mean[list]

Median[list]

Commonest[list]

Szóródási paraméterek

Mintaterjedelem

Max[list]-Min[list]

Interkvartilis félterjedelem / Kvartiltávolság

InterquartileRange[list]

Szórás, Szórásnégyzet

Clear[d];

d=N[Sum[(((list[[i]]-Mean[list]))^2)/Length[list],{i,1,Length[list]}],12]

Power[d,0.5]

N[StandardDeviation[list],8]

(((list-Mean[list]))^2)

N[Total[(((list-Mean[list]))^2)]/Length[list],12]

Fvek listája egy argumentumon

Clear[rnd]
rnd =RandomReal[{0,1},100];

fvlista={Mean,Median,Length,StandardDeviation,Variance,QuartileDeviation,Kurtosis};

fvlista[rnd]

th=Through[fvlista[rnd]]

Map[Function[ff,ff[rnd]],fvlista]

Map[#[rnd]&,fvlista]

#[rnd]&/@fvlista

Outer[ff,{aa,bb,cc},{dd,tt}]

Outer[List,{aa,bb,cc},{dd,tt}]

Outer[#1[#2]&,{aa,bb,cc},{dd,tt}]

Outer[#1[#2]&,fvlista,{rnd,lista1},1]

TableForm[th,TableHeadings->{fvlista,None}]

TableForm[th,TableHeadings->{fvlista,{Értékek}}]

List/@th

TableForm[List/@th,TableHeadings->{fvlista,{Értékek}}]

Bonyolultabb fv a listába

StandardDeviation[#]/Mean[#]&[rnd]

2. Rajzolja föl az empirikus eloszlásfüggvényt és hisztogrammot az előző lista esetében.

Bánóczy Gergely

Histogram[r]
SmoothHistogram[r]

Hegedűs Ádám

eeloszlas=EmpiricalDistribution[lista1];

{DiscretePlot[PDF[eeloszlas,x],{x,lista1}],DiscretePlot[CDF[eeloszlas,x],{x,-4,4,.01}]}

hiszt=Histogram[lista1,Automatic,"ProbabilityDensity"]

Holló Gábor

SmoothHistogram[rnd,Automatic,"CDF"]
Histogram[rnd,10]
SmoothHistogram[rnd]

Nagy Gábor

Show[Histogram[data,20,"ProbabilityDensity"],Plot[PDF[NormalDistribution[1,3],x],{x,-9,9},PlotStyle->Thick]]

Meg tudjuk írni:

F[x_]:=Count[data,y_/;y<x]/Length[data]

Plot[F[x],{x,-15,15}]

Tekinthetők-e adataink innen származónak? 1. HF

3. Határozza meg a Q(a):=(∑_(n=1)^N)(((a (Subscript[x, n])-(Subscript[y, n])))^2) függvény minimumát!

Holló Gábor

ClearAll[Q,n,x,y]
Q[a_]:=Sum[(a x[n]-y[n])^2,{n,1,NN}]
Q[a]
Solve[D[Q[a],a]==0,a]
(*min*)
D[Q[a],{a,2}]

ClearAll[Q,n,x,y]
Q[a_,b_]:=Sum[(a x[n]-y[n]+b)^2,{n,1,N}]
Q[a,b]
(* nem tudta így megoldani :( *) 
Solve[D[Q[a,b],a]==0&&D[Q[a,b],b]==0,{a,b}]

Nagy Gábor

Adatok

xn = RandomVariate[NormalDistribution[1,3],1000];

yn = 5* xn+RandomVariate[NormalDistribution[0,1.0],1000];

data=Transpose@{xn,yn};

Scatterplot az ellenőrzés végett

ListPlot[data]

Legkisebb négyzetek, konstans nélkül

line =Fit[data, {x}, x]

line =Fit[data, {1,x}, x]

line =Fit[data, {1,x,(x^2)}, x]

lm=LinearModelFit[data,x,x]

lm["FitResiduals"]

Függvény definíció és minimalizálás

Q[a_,xn_, yn_] := Total[(((a xn - yn))^2)]

xn

Minimize[Q[a, xn, yn],a]

Tóth Krisztián

Clear[szum,a,f,g,k,n];
f[n_]:=Log[32n+4n];
g[n_]:=Log[32n+4n+(Random[]×20)];
szum[a_,n_]=Sum[(a×f[i]-g[i]),{i,1,n}]

ListPlot[{Table[szum[1,n]},{n,1,1000}]]

4. Keressen adatokat a hálón, és olvassa be az Import függvénnyel.

Bánóczy Gergely

A Richter Gedeon NyRT részvényének BUX-on jegyzett árfolyama 1995-től.

Import["http://www.portfolio.hu/reszveny/adatletoltes.php?typ=xls&rv=RICHTER"]

Hegedűs Ádám

im=Import["http://arshpreetsingh.files.wordpress.com/2011/06/50553_26593144945_6762_n.jpg"]

Hyperlink[im,"http://www.sagemath.org/"]

Holló Gábor

Import["http://upload.wikimedia.org/wikipedia/commons/c/c3/Chess_board_opening_staunton.jpg"]

Nagy Gábor

A UCI machine learning repository Yeast adathalmaza

uciyeast = Import["http://archive.ics.uci.edu/ml/machine-learning-databases/yeast/yeast.data"]

Az Apple árfolyama

aapl = Import["http://ichart.finance.yahoo.com/table.csv?s=AAPL&d=1&e=22&f=2014&g=d&a=8&b=7&c=1984&ignore=.csv","CSV"]

Hasonlítsuk össze, keresssük meg az azonos számokat 2.HF

alma=FinancialData["AAPL",All]

5. Milyen adatok vannak készen a programban? ?*Data

Bánóczy Gergely

?*Data

Holló Gábor

ChemicalData["Caffeine","MoleculePlot"]
(* mindent azért nem tudhat... *)
ChemicalData["Caffeine","pH"]

Nyugi ☺

Nagy Gábor

Például
Pénzügyi adatok - FinancialData
Csillagászati adatok - AstronomicalData
Ország adatok - CountryData
Időjárás adatok - WeatherData

AstronomicalData["Sun","NextRiseTime"]

FinancialData["AAPL"]

CountryData["Hungary","Population"]

WeatherData["Budapest", "Temperature"]

Tóth Krisztián

AstronomicalData["Earth","EscapeVelocity"]

AstronomicalData["Moon","EscapeVelocity"]

AstronomicalData["Planet"]  AstronomicalData["Planet","EscapeVelocity"]

6. Mekkora a standard normális eloszlás interkvartilis félterjedelme?

Bánóczy Gergely

QuartileDeviation[NormalDistribution[0,1]]
N[QuartileDeviation[NormalDistribution[0,1]],6]

Holló Gábor

QuartileDeviation[NormalDistribution[0,1] ]

Nagy Gábor

InterquartileRange[NormalDistribution[0,1]]

Statisztikáról

Becslés

Mintavétel (reprezentatív, szekvenciális, Wald Ábrahám)

Módszerek (a legkisebb négyzetek módszere, a legnagyobb valószínűség módszere, a momentumok módszere)

Tulajdonságok, kritériumok

Hipotézisvizsgálat

Próbák

Kolmogorov—Szmirnov-próba

Függvények közelítése

Interpoláció

Regresszió

Csebisev-féle közelítés

Függvényábrázolás

A Plot[] parancs

Plot[(x^2)Sin[x],{x,1,2π}]

Plot[{(x^2)Sin[x],10Cos[x]},{x,1,2π},PlotRange->{-30,30},AspectRatio->1,Frame->True]

Itt grafikonok egy listája látható:

Table[Plot[(x^i),{x,-2,2},PlotRange->{-2,2}],{i,0,3}]

A ListPlot[]

A ListPlot a természetes számokhoz rendeli az argumentumaként megadott értékeket.

data=Table[Prime[i],{i,1,50}];

{ListPlot[data],ListLinePlot[data]}

DiscretePlot[Prime[i],{i,1,50}]

A Show különböző grafikai objektumokat jelenít meg egyszerre:

Show[{ListPlot[data],ListLinePlot[data]}]

h[x_]=Fit[data, {1, x, x^2}, x]

Show[{ListPlot[data],Plot[h[x],{x,1,50}]}]

xy = Table[{j, j^2}, {j, -3, 3, .2}]

ListPlot[xy]

DiscretePlot[Prime[i],{i,1,50}]

3Ds megjelenítés és szeletek

Plot3D[Tooltip[Sin[1-Sec[x] /Log[y]]/(x -(y^2)),"felület"], {x, 0, 1}, {y, 0.1, 0.5},AxesLabel->{"x","y","f(x,y)"}]

Plot3D[Tooltip[Sin[1-Sec[x] /Log[y]]/(x -(y^2))], {x, 0, 1}, {y, 0.1, 0.5},AxesLabel->{"x","y","f(x,y)"}]

ParametricPlot3D[ Tooltip[{Cos[u](2+ Cos[v]), (2+Cos[v])Sin[u], Sin[v]}], {u, -π, π}, {v, -π, π},Axes->None,Mesh->None]

Diszkrét(ebb) változatok.

data = Table[2(x^2)+(y^2)-10, {x, -3, 3, 1}, {y, -3, 3, 1}];

ListPlot3D[data]

A szintvonalak értéke úgy jelenik meg, mintha a Tooltipet használtuk volna.

ContourPlot[2(x^2)+6(y^2)-30,{x,-3,3},{y,-3,3}]

Házi feladatok

Készítsen 100 elemű véletlen listát standard normális eloszlásból. Vizsgálja meg többféle módon azt a hipotézist, hogy a minta standard normális eloszlásból származik.

Keresse meg az Apple pénzügyi adatai közül az azonosakat a Mathematica által adottak és a hálón találhatók között. Készítsen manipulálható ábrát a részvényárfolyamok mozgó átlagából, változtatva az átlagolandó adatok számát.

Egy függvény (pl. sin) görbéjéről vegyen 10 pontot. Mennyire használható az interpoláló polinom extrapolálásra, azaz a függvény értékének közelítésére a pontok által meghatározott intervallumon kívül?

Rajzoljon szép vagy nevezetes görbéket. (ParametricPlot) Ehhez látogasson el ide:

Hyperlink["http://blog.wolfram.com/2013/05/17/making-formulas-for-everything-from-pi-to-the-pink-panther-to-sir-isaac-newton/"]