2016. szeptember 2., péntek

Excel minta függvények

Kis összefoglaló táblázat a fontosabbnak ítéltekről:


 A függvény neve Függvény típusa A függvény jelentése  A függvény használata
ABS matematikaiabszolút értéket számolABS (4,632) = 4,632 ABS (-4,632) = 4,632
CSONK matematikaimegadott tizedes jegyeket elhagyjaCSONK (4,849 ; 2) = 4,84 CSONK (-15,671) = -15
GYÖK matematikainem negatív értékből gyököt vonGYÖK (25) = 5 GYÖK (-25) = #SZÁM! (hiba!)
HATVÁNY matematikaihatványértéket számolHATVÁNY (4;2) = 16 HATVÁNY (-2;3) = -8
INT matematikailefelé kerekít a legközelebbi egészreINT (5,832) = 5 INT (-5,832) = -6
KEREK matematikaimegadott tizedes jegyekre kerekítKEREK (5,876 ; 2) = 5,88 KEREK (-5,876 ; 2) = -5,88
MARADÉK matematikaiosztás utáni maradékot számolMARADÉK (10 ; 3) = 1 MARADÉK (-10; -3) = -1
RÓMAI matematikaiarab számot (>0) rómaivá alakítRÓMAI (123) = “CXXIII” RÓMAI (-59) = #ÉRTÉK!
SZORZAT matematikaiparamétereinek szorzatát adja megSZORZAT (2 ; 3 ; 5) = 30 SZORZAT (-3 ; 4) = -12
SZUM matematikaiparamétereinek összegét adja megSZUM (2 ; 3; 5) = 10 SZUM (-3 ; 4) = 1
SZUMHA matematikaifeltételtől függő SZUM függvénySZUMHA (A1:A3 ; “>2”) = 8 (ha A1=3, A2=1, A3=5)
SZORZAT-ÖSSZEG matematikaicellapárok szorzatait adja összeSZORZATÖSSZEG (A1:A3 ; C1:C3) = A1*C1 + A2*C2 + A3*C3
ÁTLAG statisztikaiparamétereinek átlagát adja megÁTLAG (2 ; 3 ; 4) = 3 ÁTLAG (-10 ; 10) = 0
DARAB statisztikaiparaméterszámok darabszámát adjaDARAB (1 ; 6; 18; 5) = 4 DARAB (3 ; “vaj” ; 7) = 2
DARABTELI statisztikaiadott feltételt teljesítő cellák számaDARABTELI (A1:A3;”>2″)=2 (ha A1=3, A2=1, A3=5)
MEDIÁN statisztikaiparamétereiből a középsőt adja megMEDIÁN (11 ; 3 ; 12 ; 8; 102 ; 24; 50) = 8
MAX statisztikaiparamétereinek legnagyobbikát adjaMAX (4 ; -2 ; 8 ; 1) = 8 MAX (-2; -5; -1) = -1
MIN statisztikaiparamétereinek legkisebbikét adjaMIN (4 ; -2 ; 8 ; 1) = -2 MIN (-2; -5; -1) = -5
NAGY statisztikaivalahányadik legnagyobb elemet adjaNAGY (A1:A4 ; 2) = 4 (ha A1=3, A2=1, A3=5, A4=4)
KICSI statisztikaivalahányadik legkisebb elemet adjaKICSI (A1:A4 ; 2) = 3 (ha A1=3, A2=1, A3=5, A4=4)
MÓDUSZ statisztikaiparamétereinek leggyakoribbját adjaMÓDUSZ (5 ; 3 ; 2 ; 3 ; 5; 1 ; 7 ; 5 ; 2) = 5
SZÓRÁS statisztikaiparaméterei szórását becsli megSZÓRÁS (1 ; 2 ; 3) = 1 SZÓRÁS (2 ; 6 ; 10) = 4
DÁTUM dátumév, hó, nap hármasból dátumot csinálDÁTUM (1999; 10 ; 23) = 1999.10.23
ÉV dátumegy dátumból az évet adja megÉV (“1999.10.23”) = 1999
HÉT.NAPJA dátumegy dátumhoz a napot adja megHÉT.NAPJA (“1999.10.23” ; 2) = 6 (azaz szombat)
HÓNAP dátumegy dátumból a hónapot adja megHÓNAP (“1999.10.23”) = 10
MA dátuma mai (aktuális) dátumot adja megMA () = 1999.10.23 (ha ma 1999.10.23-a van)
NAP dátumegy dátumból a napot adja megNAP (“1999.10.23”) = 23
JBÉ pénzügyiJBÉ (%;időszak;részlet) = kamatos összegJBÉ(20%;2;-100)=220 (ha 2 év alatt évi 100-at fizetek 20%-ra)
pénzügyiMÉ (%;időszak;részletek összege) = hitelösszegMÉ(20%;1;-120)=100 (ha 1 év alatt120-at fizettem 20%-ra)
RÁTA pénzügyiRÁTA(időszak ; részlet ; összeg)=%RÁTA(1;-120;100)=20% (ha 1 év alatt 100 helyett 120-at fizetek)
RÉSZLET pénzügyiRÉSZLET (% ; időszak ; összeg) = részletRÉSZLET(20%;1;100)=-120 (ha 1 év alatt 20%-ra 100-at kaptam)
HA logikaifeltételtől függő 2 lehetőség választásaHA (5 > 8 ; “igaz” ; “hamis”) = “hamis”
ÉS logikaicsak akkor igaz, ha mind igazÉS (A1=2 ; A2=3) = “hamis” (ha A1=2, A2=4)
VAGY logikaicsak akkor hamis, ha mind hamisVAGY (A1=2 ; A2=3) = “igaz” (ha A1=2, A2=4)
FKERES mátrixtábla első oszlopában megkeresi az értéket, és a megtalált elem sorából a megadott oszlopban levő értéket adjaFKERES ( keresési érték ; tábla ; oszlop_szám ; tartományban_keres)
VKERES mátrixtábla első sorában megkeresi az értéket, és a megtalált elem oszlopából a megadott sorban levő értéket adjaVKERES ( keresési érték ; tábla ; sor_szám ; tartományban_keres)
VÁLASZT mátrixértékek egy listájából választ ki egy elemet vagy végrehajtandó műveletet, index szám alapjánVÁLASZT (index ; érték1 ; érték2 ; érték3 ; …)
HOL.VAN mátrixmegadott rendezés esetén az értéknek megfelelő tömbelemnek a tömbbeli helyét adja megHOL.VAN (keresési érték ; tábla ; egyezés_típus)
INDEX mátrixértéket vagy értékre történő hivatkozást szolgáltat egy táblázatból vagy tartománybólINDEX (…)


Példa, magyarázat, …


 Dátumfüggvények


DÁTUMÉRTÉK(szöveg): a szövegesen megadott dátumot dátumérték típusúvá alakítja. Ez azért fontos, mert sok dátumfüggvény argumentuma dátumérték típusú.
Példa:
DÁTUMÉRTÉK(”2004.03.24”)
Megjegyzés: Ha a cella formátuma Szám, akkor a cella értéke 38070. Ez azt jelenti, hogy 1900 január 1-je óta ennyi nap telt el.

DÁTUM(év;hónap;nap): a megadott argumentumok alapján előállít egy dátumérték típusú értéket. Azaz ugyanazt teszi, mint az előző függvény, csak az argumentum-megadás módja más.

NAP360(kezdő_dátum;vég_dátum): a két dátum között eltelt napok számát adja meg. Argumentumai dátumérték típusúak.

HÉT.NAPJA(dátumérték;eredmény_típusa): megadja, hogy a dátumérték által meghatározott dátum a hétnek milyen napjára esik. Ha az eredmény_típusa argumentum hiányzik, vagy értéke egy, akkor a vasárnapot jelöli 1. Ha az argumentum értéke kettő, akkor a számozás hétfőtől kezdődik, ha pedig három, akkor a hétfő értéke 0.

EDATE(dátum;hónapok): az adott dátumhoz hozzáad (negatív hónapok érték esetén kivon) hónapok számú hónapot.

ÉV(dátumérték), HÓNAP(dátumérték), NAP(dátumérték): a megadott argumentumból kinyeri az évet, hónapot, illetve napot.
Példa:
HÓNAP(DÁTUMÉRTÉK(“2004.03.24”))
Ezesetben a visszaadott érték 3.

MA(): A mai dátumot adja meg.

IDŐÉRTÉK(szöveg): a megadott szöveget időérték típusúvá alakítja.
Példa:
IDŐÉRTÉK(”14:55”)
IDŐÉRTÉK(”2004.03.24 15:00”)
Megjegyzés: Az időérték típus értékei a (0,0.9999) intervallumba esnek. A 0 megfelel a 0:00:00  időpontnak, míg a 0.9999 a 23:59:59  időpontnak.

IDŐ(óra;perc;másodperc): az adott időpont időértékét adja meg.

ÓRA(időérték), PERC(időérték), MPERC(időérték): időértéket órává, percé, illetve másodperccé alakít át.

Logikai függvények


ÉS(logikai_érték1;logikai_érték2;…): igaz, ha minden argumentuma igaz.

VAGY(logikai_érték2;logikai_érték2;…): igaz, ha legalább egy argumentuma igaz.

NEM(logikai_érték): argumentuma értékének ellentettjét adja eredményül.
Példa:
NEM(HAMIS()) értéke igaz.

HA(logikai_érték;érték_ha_igaz;érték_ha_hamis): ha a logikai_érték igaz, akkor a második argumentum értékét adja eredményül, ha hamis, akkor a harmadikét.

HAMIS(), IGAZ(): mindig hamis, illetve igaz értéket adnak eredményül, nevüknek megfelelően.

 Matematikai függvények


ABS(szám): a szám abszolút értékét adja eredményül.

GYÖK(szám): a szám pozitív négyzetgyökét adja meg.

KOMBINÁCIÓK(n;k): n elem k-adrendű ismétlés nélküli kombinációinak számát adja meg.

DARABTELI(tartomány;kritérium): a megadott tartományban összeszámolja, hogy az adott kritériumnak hány elem felel meg.
Példa:
DARABTELI(B2:C4;2): megadja a B2:C4 tartomány olyan celláinak számát, amelyben a 2 szerepel.
DARABTELI(B2:C4;”>2”): a tartomány 2-nél nagyobb elemeinek számát adja meg.

GCD(szám1;szám2;…): a legnagyobb közös osztót adja eredményül. Argumentumai egész számok.

LCM(szám1;szám2;…): a legkisebb közös többszöröst adja eredményül. Argumentumai egész számok.

SIN(szám), SINH(szám), COS(szám), COSH(szám), TAN(szám), TANH(szám): sinusz, szinusz hiperbolikusz, koszinusz, koszinus hiperbolikusz, tangens, tangens hiperbolikusz függvények. Az argumentum tetszőleges valós szám.

LN(szám), LOG10(szám), LOG(szám;alap): természetes, tízes és tetszőleges alapú logaritmusát adja a szám argumentumának.

CSONK(szám;számjegyek): a szám törtet úgy kerekíti számjegyek pontossággal, hogy a törtrészből vág le. Számjegy darab tizedesjegy marad meg.
Példa:
CSONK(2,568;1) eredménye 2,5

INT(szám): egy számot lefelé kerekít a legközelebbi egészre.

KEREK(szám;pontosság), KEREK.FEL(szám;pontosság), KEREK.LE(szám;pontosság): a megadott számot pontosság számjegyre kerekíti szabályosan, fel, illetve le.
Példa:
KEREK.LE(29,568;-1) eredménye 20, mivel a tizedesvesszőtől balra egy jeggyel kerekít (azaz tízesekre).

MROUND(szám1;szám2): a szám1 számot szám2 legközelebbi többszörösére kerekíti.

PADLÓ(szám1;szám2): a szám2 legközelebbi többszörösére kerekít lefelé.
Példa:
PADLÓ(2,5;0,8) eredménye 2,4, mivel 0,8*3=2,4, és ez van legközelebb 0,8 többszörösei közül 2,5-höz.

PLAFON(szám1;szám2): ugyanaz, mint az előző, csak felfelé kerekít.

PÁRATLAN(szám), PÁROS(szám): argumentumát a legközelebbi páratlan, illetve páros számra kerekíti.

SZUM(szám1;szám2;…): argumentumait összeadja. Az argumentumok maximális száma 30.

SZORZAT(szám1;szám2;…): legfeljebb 30 argumentumát összeszorozza.

SZUMHA(tartomány;kritérium;összeg_tartomány): tartomány és az összeg_tartomány két, azonos számú cellából álló sor- vagy oszloptartomány (a cellák egy sorban, vagy oszlopban találhatók). A függvény végigmegy a tartomány minden celláján. Ha a kritérium teljesül a tartomány i-edik cellájára, akkor az összeg_tartomány i-edik cellájának értéke beleszámít az összegbe, különben nem. A kritérium lehet érték, vagy kifejezés. Például az ”Álmos” kritériumnak azok a cellák felelnek meg, amelyekben ez a szöveg található. A ”>5” kritériumot pedig az 5-nél nagyobb értéket tartalmazó cellák elégítik ki.
Megjegyzés: A két tartomány akár ugyanaz is lehet.

SZORZATÖSSZEG(tartomány1;tartomány2): a tartományok a SZUMHA függvény argumentumaihoz hasonlók. A függvény a tartományok i-edik elemeit összeszorozza, majd a szorzatokat összeadja. Ez hasonló a vektoriális szorzathoz.

NÉGYZETÖSSZEG(szám1;szám2;…): maximum harminc argumentumának négyzetösszegét adja eredményül.

RANDBETWEEN(alsó;felső): alsó és felső közötti véletlen egész számot ad eredményül.

 Statisztikai függvények


DARAB(érték1;érték2;…): az argumentumlistában szereplő számok, vagy számokat tartalmazó cellák darabszámát adja meg.

KICSI(tartomány;k), NAGY(tartomány;k): előbbi tartomány k-adik legkisebb, utóbbi tartomány k-adik legkisebb értékét adja eredményül.

MAX(szám1,szám2;…), MIN(szám1;szám2;…): argumentumai közül a legnagyobbat, illetve a legkisebbet adja vissza.

ÁTLAG(szám1;szám2;…): argumentumainak átlagát adja vissza.

 Szövegfüggvények


AZONOS(szöveg1;szöveg2): értéke igaz, ha a két szöveg megegyezik. A kis- és nagybetűket különbözőkként kezeli, viszont a szóközkaraktereket nem veszi figyelembe.

BAL(szöveg;karakterszám), JOBB(szöveg;karakterszám): a szöveg bal- illetve jobbszélétől kezdve karakterszámnyi karaktert ad vissza.
Példa:
BAL(“kutya”;2) eredménye: „ku”;

KÖZÉP(szöveg;pozíció;darab): a szöveg pozíció sorszámú karakterétől kezdődően visszaad darab számú karaktert.
Példa:
KÖZÉP(“aki keres az talál”;5;5) eredménye „keres”.

CSERE(szöveg1;pozíció;darab;szöveg2): a szöveg1 pozíció sorszámú karakterétől kezdődően kivág darab számú karaktert, és helyükre a szöveg2 szöveget illeszti be.
Példa:
CSERE(“alma”;2;2;”lmuni”) eredménye „almunia”.

HELYETTE(szöveg;régi;új;melyik): a szöveg szövegben a régi szöveg előfordulásait az új szövegre cseréli. Ha a melyik argumentum (ami egy szám) szerepel, akkor a régi szöveg annyiadik előfordulását cseréli csak ki.
Példa:
HELYETTE(“baba”;”ba”;”sír”;1) eredménye „sírba”, míg HELYETTE(“baba”;”ba”;”sír”) eredménye „sírsír”.

SZÖVEG.KERES(szöveg1;szöveg2;kezdet): a szöveg1 szövegben szöveg2 szöveget keresi a kezdet pozíciótól kezdődően, és annak első előfordulásának kezdetét adja eredményül. Ezt más függvényekben felhasználhatjuk.

TNÉV(hivatkozás): az argumentuma egy cellahivatkozás, amelyben akár egy képlet is lehet. A függvény a hivatkozott cella értékét alakítja szöveggé.


Eclipse alapok

Az Eclipse platform

Az Eclipse nyílt és integrált fejlesztőrendszer.

A nyíltság azt jelenti, hogy interfészek jól definiáltak, bárki számára elérhetők, melynek
következménye, hogy a rendszer könnyen bővíthető, és nem kötődik kizárólag egy szállító termékeihez. Bár nem követelmény, általában platform- és ideális esetben programozási nyelv-független egy ilyen rendszer.

Az integráltság jelentése pedig, hogy az eszközöket (általában egy szállító eszközeit)
közös keretben fogja össze, ami kényelmessé és hatékonnyá teszi a fejlesztést.

A két tulajdonság egyesítését a bővítmények (plug-in) technológiája teszi lehetővé. A
bővítmények kapcsolódási pontjait – melyek lehetővé teszik a bővítmények platformhoz és egymáshoz való kapcsolódását – pontosan rögzítik, elérve ezáltal a nyíltságot, továbbá a bővítmények egymás funkcionalitását bővítik ki, lehetővé téve az integráltságot is.

Integrált, de nem nyílt fejlesztőrendszer pl. a Microsoft Visual Studio .NET eszköze, a
Borland eszközei, az Oracle Application Builder. Nyílt és integrált pl. a NetBeans és az
Eclipse.

Eclipse történelme

Az Eclipse-et az IBM egyik 1996-ban felvásárolt részlege, a fejlesztőkörnyezetek fejlesztésében nagy tapasztalattal rendelkező Object Technology International (OTI) kezdte el fejleszteni 1998-ban. A cél az volt, hogy az IBM különböző fejlesztőeszközeinek közös platformot hozzanak létre, mivel ezek az eszközök úgy néztek ki, mintha különböző gyártóktól származtak volna – nem voltak képesek együttműködni.
Az Eclipse fejlesztésének elkezdésével egy időben az IBM egy másik részlege Eclipse-en alapuló eszközt kezdett el készíteni.
Kezdetben a kereskedelmi partnerek vonakodtak az ismeretlen Eclipse-től, így – az elfogadás elősegítésére – az IBM nyolc más szervezettel együtt létrehozta az Eclipse konzorciumot és az eclipse.org-ot.

Az Eclipse első komolyabb kiadásai gyorsan népszerűvé váltak a fejlesztők körében,
azonban a piac kétkedéssel fogadta, hiszen úgy tűnt számukra, hogy az Eclipse egy az IBM befolyása alá tartozó termék.

E nyomás hatására az Eclipse konzorcium átalakult, létrejött az Eclipse Alapítvány, egy non-profit szervezet, mely a támogató szervezetek által fizetett, de  önálló fejlesztői gárdája van.

Eclipse Bővítmények

Az Eclipse esetében – egy minimális kernelt leszámítva – minden bővítményekkel van
megvalósítva. Minden bővítmény két részből áll: egyrészt egy szöveges definíciós részből (manifest.mf és plugin.xml), másrészt az implementációt tartalmazó osztályokból.

A definíciós rész néhány adminisztrációs adaton kívül azon információkat tartalmazza, hogy a bővítmény mely más bővítményeket igényel, azokat mely pontokon (kiterjesztési pontok) egészíti ki, és maga milyen kiterjesztési pontokat definiál.

A kiterjesztési pontok névvel, azonosítóval és egy XML Schema fájl segítségével definiálhatók.

Az XML Schema fájl írja le, hogy az adott kiterjesztési ponthoz tartozó bővítésnek
milyen adatokat kell megadnia magáról. Így a csatlakozás tetszőlegesen alakítható a programozó
igényeihez.

Az Eclipse Runtime Platform biztosítja az Eclipse alapvető szolgáltatásait, melyek a
következők:
– Bővítménykezelő (Plug-in registry): Betölti és kezeli a bővítményeket. Feloldja és kezeli
a függőségeket. A teljesítmény növelése érdekében a bővítmények kezelésekor
„lusta” betöltést alkalmaz, azaz a plug-in osztályait csak akkor tölti be, ha azokra feltétlenül szükség van.
– Erőforrás-kezelés: Platformfüggetlen elérést biztosít a fájlok és könyvtárak számára.

Kezeli az Eclipse munkaterületét (workspace), amely lehetővé teszi a benne lévő elemek
relatív úton való elérését, valamint képes a fájlok változását nyomon követni. A
munkaterületet az Eclipse a projektek tárolására használja. A projekt összetartozó fájlok
és könyvtárak halmaza, melyből egy (vagy több) végterméket lehet előállítani.

Projekt lehet pl. egy Java alkalmazás. Kezeli a fájlkódolásokat, tartalomtypusokat
(content type), valamint a hivatkozott erőforrásokat (linked resources), melyek nem a
munkaterületen találhatók, de onnan hivatkozottak.
– Felhasználói felület komponensek állnak rendelkezésre. Az Eclipse kétféle (de egymásra épülő) lehetőséget biztosít grafikus felület létrehozására. A Standard Widgeting
Toolkit (SWT) platformfüggő (de az Eclipse által támogatott platformokon elérhető),
natív grafikus elemeket használó könyvtár, míg a JFace magasabb szintű, SWT-re
épülő, platformfüggetlen megoldást kínál.
– Frissítési támogatás. Mivel bővítmények egymásra épülnek, frissítésük nem kézenfekvő
feladat. Ebben nyújt segítséget a Runtime Platform frissítési támogatása, mely
URL-lel elérhető helyekről (így távoli, internetes forrásokból) való telepítést és frissítést
támogat.
– Súgó támogatás. Az Eclipse súgója moduláris szerkezetű, minden bővítmény delegálhat
bele tartalmakat. HTML/XML-alapú, az oldalak a helyi számítógépen, vagy
akár az interneten is elhelyezkedhetnek, sőt, az oldalak dinamikusan is előállíthatók.

A fejlesztők a Runtime Platform szolgáltatásai egy nagyon kis „kernelben” implementálták,
így minden egyéb bővítményként van megvalósítva.

Az Integrated Development Environment (IDE) komponens általános célú fejlesztői eszközöket biztosít – anélkül, hogy konkrétan megkötné a felhasznált nyelvet vagy környezetet.

Az Eclipse IDE a következő szolgáltatásokat nyújtja:


– Megosztott nézeteket biztosít, melyeket több bővítmény is használhat egyszerre.
Többnyire statikus információk megjelenítésére használtak, mint amilyen az erőforrásfa
vagy a tulajdonságok nézet.
– Keresőmotor, amely kiterjeszthető a környezetre jellemző különlegességekkel.
– Több szöveges tartalom megjelenítése, összehasonlítása, egyesítése.
– Nyomkövetési és hibakeresési támogatás, mely magában foglalja az erőforrások
(stack frame, memória, regiszterek…) kezelését, kiértékelendő kifejezések megadását,
változók értékeinek figyelését. Parancsok definiálhatók léptetésre, indításra stb. Természetesen
mindezt nyelvfüggetlenül.
– Ant-támogatás. Az egyre népszerűbb, javás fordítást segítő eszköz, az Ant – mely a
UNIX rendszerekben használt make utódja kíván lenni – használatát teszi lehetővé.
– Csoportmunka támogatása. A CVS támogatása beépített, de más verziókezelő eszközök integrációjára is lehetőség van.
– Perspektívák támogatása. Az Eclipse-ben több perspektíva is élhet egymás mellett,
melyek közül mindig csak egy aktív. A perspektíva meghatározza, hogy milyen nézetablakok
legyenek nyitva és azok hogyan helyezkedjenek el a szerkesztőablakhoz viszonyítva.
– Beállítások ablak. A beállítások közé minden plug-in delegálhat egy több oldalból álló,
hierarchikusan elrendezett struktúrát, melyen a bővítmény különböző beállításai
adhatók meg.

Az Eclipse IDE további általános szolgáltatásai:

A szerkesztőablak és az áttekintőablak (outline) összekapcsolása: ha a szerkesztőablak
megváltozik, az áttekintőablakban az azonnal észrevehető.
– Content assist: A szerkesztő az adott kurzorpozícióban értelmes kiegészítéseket kínál
fel Ctrl+Space megnyomására.
– Sablonok (template): Olyan kódrészletek, melyek a Content Assist segítségével beilleszthetők a szövegbe.
– Formázó. Szintaktikai formázási szabályok állíthatók be és alkalmazhatók a kijelölt
vagy a teljes szövegre.
– Valós időben azonosított problémák. A hibák és figyelmeztetések nem csak a fordítást
követően, hanem gépelés közben láthatóvá válnak.

Eclipse eszközrendszerek:

– A Java Development Tools (JDT) az IDE komponenst egészíti ki Java nyelvfüggő
elemekkel. Tartalmazza a Java nyelv objektummodelljét, mely metódus szintig képes kezelni a Java forráskódot.

Képes a lekérdezésen kívül módosítani is azt, sőt, képes kódot is generálni.

Továbbá tartalmaz absztrakt szintaxisfát, valamint az IDE-nél leírt általános eszközök javás megfelelőjét (szerkesztő, áttekintőablak, Content Assist, sablonok, formázás, Java nézetablakok, nyomkövető rendszer).
– A C Development Tools (CDE) a JDT-hez hasonló nyelvi kiterjesztés, azonban nem
Javahoz, hanem C-hez és C++-hoz.
– A Plugin Development Environment (PDE) támogatást nyújt saját bővítmények fejlesztéséhez,
a futtatásukhoz, a definíció elkészítéséhez, és a publikáláshoz is.
– A Web Tools Platform [10] segítségével webalkalmazásokat (azok minden komponensével
együtt a statikus HTML-ektől kezdve egészen a servletekig és JSP-kig) tudunk készíteni
és az alkalmazásszerverre telepíteni.
– A Contributed Plug-ins rész a saját bővítményeinknek van fenntartva.
Rich Client Platform: Lehetőségünk van az Eclipse Runtime Platformra közvetlenül
építő alkalmazások írására is, kihasználva az Eclipse alapvető lehetőségeit anélkül, hogy fölösleges,
a fejlesztőkörnyezetekben használt bővítményekkel terhelnénk a programunkat.

Eclipse súgó

Az Eclipse súgójához bármely bővítmény hozzáteheti a saját súgóját.
Az Eclipse súgója könyvekből épül fel. Minden bővítmény létrehozhatja a saját könyvét.

Ehhez az „org.eclipse.help.toc” kiterjesztési ponthoz kell egy kiterjesztést definiálnia,
melyben megadja, hogy hol helyezkednek el a tartalomjegyzékeket leíró fájlok. A kiterjesztésekben
definiálható tartalomjegyzékek lehetnek elsődlegesek (új könyv létrehozására), vagy
nem elsődlegesek. Ez utóbbi esetben a könyv egy részletének tartalomjegyzékét írják le.

A tartalomjegyzékekben témákat (topic) adhatunk meg, amelyekhez cím és egy
HTML-oldal tartozik. A HTML-oldal lehet lokális gépen tárolt, vagy interneten elérhető is. A
témák tartalmazhatnak további témákat (az adott fájlban vagy külön fájlban tárolva), amivel a súgó elemei hierarchikus rendszerbe foglalhatók.
A súgóban megadhatók dinamikus tartalmak is, tovább bővítve az Eclipse súgójának lehetőségeit.

Eclipse perspektíva

A perspektívák elsősorban a nézetablakok szerkesztőablak körüli elhelyezésének beállítására, valamint az adott környezetre érvényes beállítások érvénybe léptetésére való.

A perspektíva létrehozásához az „org.eclipse.ui.perspectives” kiterjesztési ponthoz
kell kiterjesztést írnunk a plugin.xml-ben. Meg kell adnunk egy azonosítón kívül a perspektíva nevét (ami a perspektívák listáiban fog megjelenni), egy ikont, azt, hogy a felhasználó módosíthatja-e a beállításainkat, valamint a perspektívát megvalósító osztályt.

A perspektívát egy IPerspectiveFactory interfészű osztály valósítja meg. Ennek egyetlen
metódusában megadhatjuk, hogy a szerkesztő körül merre (balra, jobbra, fent, lent) milyen nézetet vagy nézeteket szeretnénk elhelyezni, és azok mekkorák legyenek. (Úgy találtuk, hogy a nézetek méretének megadása elég nehezen kezelhető volt). Beállíthatjuk továbbá például, hogy mely varázslókat és nézeteket szeretnénk gyorsabban elérni, azaz a megfelelő listában kiemelni.

A builder


A builderek olyan osztályok, melyek arra használhatók, hogy forrásfájlokból – legyen
az bármilyen fájl – származtatott fájlokat állítson elő. A művelet során megkülönböztethetünk
inkrementális és teljes előállítást.

Az inkrementális előállítás során az osztály – belső állapotát felhasználva – csak azon
származtatott állományokat állítja újra elő, amelyeket szükséges, megtakarítva egy több száz
vagy ezer forrásállományból álló projekt esetén a szükségtelen részek újragenerálását. Cserébe
viszont az implementáció sokkal körülményesebb.

Teljes előállítás során a meglévő származtatott állományokat figyelmen kívül hagyjuk,
és a forrásfájlokból újra előállítjuk őket.
Ezek alapján a buildert megvalósító osztályban a két módszernek megfelelően két metódust
implementálhatunk. A build() metódus az inkrementális előállítást végzi el, míg a
fullBuild() metódus a teljes előállításért felelős.

A builder aktiválásához egyrészt ki kell terjesztenünk a „org.eclipse.core.resources.builders”
kiterjesztési pontot, ahol megadhatjuk – többek között –
a megfelelő osztályt is. Másrészt implementálnunk kell az IncrementalProjectBuilder osztályt
kiterjesztő osztályunkat. Harmadrészt a megadott előállító osztályt hozzá kell kötnünk egy
projektfajtához (project nature), így a keretrendszer akár az automatikus előállítást is tudja
kezelni.

Szintaxis-kiemelés


A szintaxis-kiemeléshez (syntax highlighting) az Eclipse egy szabályalapú rendszert
használ. Felső szinten megadhatjuk, hogy egy adott szöveget milyen partíciókra osszon fel
(nyilvánvalóan egy Java kommentre más kiemelési szabályok vonatkoznak, mint egy forrásszöveg-
részletre), majd ezen partíciókhoz hozzárendelhetünk különféle szabályokat megadott
sorrend szerint.

Amennyiben egy szabálynak megfelel az éppen vizsgált részlet, akkor az
megadja, hogy a részlet milyen attribútumokkal (szín, vastagság, háttér, …) rendelkezzen. Ha
a szabálynak nem felel meg a részlet, akkor továbblép a sorrendben következő szabályra.

Az Eclipse rendelkezik néhány beépített szabállyal is:
- Van olyan szabály, amely egy olyan egysoros részletre illeszkedik, amely valamilyen karakterlánccal kezdődik és valamilyen – esetlegesen más – karakterlánccal fejeződik be.

- Van, ami többsoros részletre illeszkedhet.
- Van, amelyik a whitespace karakterekre illeszkedik.

Írhatunk saját szabályt is. A programozás során nagy segítségünkre van egy ICharacterScanner
interfészű osztály, melyet a környezet ad át.

Ettől az osztálytól kérhetünk karaktert a szövegből, vagy – ha szükséges – vissza is tehetünk
a szövegbe már egyszer beolvasott karaktereket.

A szintaxis-kiemeléssel kapcsolatos beállításokat egy SourceViewerConfiguration
osztályból származó osztályban adhatjuk meg, melyet az adott szerkesztő konstruktorában
kell megadnunk.


Vállalati informatikai rendszerek alapfogalmai



BI | Business intelligence  | Üzleti inteligencia
Olyan célirányos riportkészítő szoftverek melyek vállalkozás különböző adatbázisaiból
származó összes tényadatot összegyűjtik, megtisztítják, széles körű elemzési,
dinamikus riportkészítési lehetőséget nyújtanak, úgy hogy Segítsék a vezetőket
a jobb tervek készítésében, megfelelőbb döntések meghozatalában.

Adat: Jelek sorozata (pl. bitek, betűk,/karakterek/), amelyek számítástechnikai
eszközökkel feldolgozhatók és megjeleníthetők.
Információ: Olyan adat, amely csökkenti a világról alkotott ismeretek
bizonytalanságát.
Tudás: Az információt aktív, cselekvéssé tudja alakítani.

BSC | Balanced Scorecard | kiegyensúlyozott mutató számrendszer
Olyan modell, ahol a stratégiai célokat hierarchiák mentén bontják le elemi, mérhető célokra.
A vállalat egészében a szervezetet a humán és pénzügyi erőforrások optimalizálásával,
a hosszú és a rövidtávú vállalati stratégiával összhangban közös célkitűzések
és a tulajdonosi célok elérése érdekében menedzselik.


Előnyők:
  • a stratégiát könnyen értelmezhető és összehangolt célokká bontja le
  • a célokhoz mutatókat, elvárásokat és akciókat rendel
  • támogatja a tervezést és a visszamérést
  • alkalmas az ok-okozati összefüggések megfogalmazására
  • a vezetőség jövőképét közös, szervezeti jövőképpé alakítja

Mutatószám rendszer | Scorecarding :
Olyan módszer, ahol a vállalati stratégiából mutatószámokat képzünk,
ezek teljesülése mérhető és a vállalati teljesítményről visszajelzést ad.


KPI | Key Performance Indicator | Kulcs teljesítmény jelzők:
A mutatószámok képzésével a vállalati tevékenységből képződő alap adatok
aggregálása, szelekciója történik, amit hozzárendelnek a teljesítmény méréséhez.
Minden munkavállaló által érthetővé válik, milyen célokat kell elérni.


BPM | Business Performance Management | Üzleti, vállalati teljesítmény kezelés
Olyan menedzselési és elemzési folyamatokat takar, amik segítik a vállalatokat
a stratégiai célok definiálásában, majd a teljesítmény mérését ezen célok tükrében.
A módszer lehetővé teszi a különböző forrásokból származó adatok elemzését, összesítését.
A folyamatok javítását pedig visszajelzési csatornák létrehozásával, fejlesztésével éri el.


OLAP | On-line analytical processing | Azonali elemzési műveletek
Lehetővé teszi az adatok gyors és rugalmas lekérdezését, majd ezt követő elemzését, mindezt többdimenziós nézetekre, struktúrákra alapulva. Fő előnye, hogy a többdimenziós átfúrható nézettel a felhasználó számára könnyen átlátható a vállalati teljesítmény  és a piaci, gazdasági tendenciák és összefüggések.


Az OLAP terminológiába tartozó legfontosabb fogalmak:

Dimenzió | dimension :
Az egy tranzakcióhoz köthető attribútum, egy meghatározó mező.
Ilyen például a termék, dátum, eladó.

Hierarchia | hierarchy :
A dimenziókhoz gyakran hierarchiákat rendelünk,
melyek meghatározzák az adatok megjelenítésének részletességét, azok
csoportosítását.
Pl: nap → hónap → negyedév → év a dátum dimenzió hierarchiáinak lehetséges szintjei.

Mérték | measure /fact/:
Olyan adatmezők, melyek valójában összeadható mennyiségek.
Ilyen például egy konkrét termék ára.

Kategória | category :
A kategóriák dimenziókhoz hozzárendelt adatpontok, melyek gyakran hierarchiába
rendezhetőek.


Elemzési feladatok elemei:

gyakori minták kinyerése, mintázatok felismerése:
a gyakran ismétlődő elemek felfedezése.


attribútumok közötti kapcsolat:
a minta összefüggéseinek meghatározásával általánosítás a teljes adattömegre
és egy újabb, ismeretlen elem attribútumainak megbecslése, előrejelzése.

klaszterezés:
a feldolgozandó objektumokat előre definiált csoportokba, klaszterekbe való rendezése.

sorozatelemzés:
ismétlődések, összefüggések keresése az egymást követő adatok között. Olyan általános érvényességű szabályszerűség felfedezése, amelynek segítségével meghatározható a sorozat következő eleme.

eltéréselemzés:
Célja olyan elemek kiszűrése, amelyek nem illenek bele a sorozatba.
Leginkább visszaélések, csalások kiszűrésére szolgál.

Előrejelző elemzések:
Itt egy modell felállítása a cél, mellyel múltbeli adatokból következtethetünk jövőbeli eredményekre. Ilyen modellel lehetséges pl. egy változó értékének becslése több változóból úgy, hogy megvizsgáljuk milyen összefüggés volt a múltban a kulcsváltozó és a többi változó között.
A már rendelkezésre álló adatokra építve tehát felállítható egy előrejelző modell.


Statisztikai regresszió:
A független és függő változók közötti összefüggéseket vizsgálja és a kapcsolatot leíró két-vagy többváltozós függvényt keresi.
 - Egyszerűbb formája a lineáris regresszió, amikor lineáris kapcsolatot feltételezünk a változók
között, s a folytonos eredményváltozó értéke egy vagy több független változó
lineáris függvényeként alakul ki.
- Logisztikus regressziónál ugyanakkor az eredményváltozó mérési szintje bináris vagy ordinális változó, s keresett kapcsolat lehet nemlineáris is.
A regresszió két vagy több ismérv közötti összefüggés pontos feltárását és a feltárt
összefüggés alkalmazását jelenti.

KNIME alapok : ETL képesség



Az ETL (Extract, Transform, Load) :

Egy olyan szoftver komponens, amely nagy mennyiségű adat mozgatására, előkészítésére szolgál.
Részei/elemei:
  • kinyerés (Extract),
  • transzformálás (Transform) és a
  • betöltés (Load).
Az adatok kinyerése (exportálás, adatbázis lekérdezés, stb.) általában megoldott az egyes rendszerek esetében, azonban a kapott adatok felépítése az esetek döntő többségében eltérő, a rendszerek közötti átjárás közös adatok feldolgozása már problémás lehet.

Ilyen tisztításra, adat kinyerésre sokszor kisebb scriptek, utility-k készülnek, melyek lefejlesztése időbe telik, erőforrásokat foglal és költséget jelent, nem beszélve arról, hogy hibalehetőséget hordoz magában, valamint az ilyen scriptek karbantartása szintén komoly erőforrásokat igényelhet.

A folyamatokba vezérlési szerkezetek is elhelyezhetőek és támogatott a változók használata is, melyek révén akár bonyolultabb logikával is felvértezhetőek a workflow-k. Az egyes csomópontok között akár függőségek is megadhatóak, melyekkel szabályozható a csomópontok lefutási sorrendje.

A modern integráló eszközök már röptében töltenek és transzformálnak ezért E-LT szeretik hívni magukat (pl. ODI : Orcale Data Integrator).

Célértékkek sora : Adat -> Információ -> Érték

  • Adat lehet szinte bármi, ami egy cégen belül keletkezik a napi munkavégzés során.
  • Információ az, amit ezek az adatok jelentenek, amit magukban rejtenek.
  • Érték pedig akkor születik, ha a fentiek a megfelelő formába öntve a cég eredményességét szolgálják, vagyis csökkentik a reakcióidőt, növelik a hatékonyságot és pozitívan hatnak az értékesítésre valamint az ügyfélmegtartásra.

A KNIME (The Konstanz Information Miner)

Olyan grafikus, jávás eszköz, amellyel teljes analízist végezhetünk: adat transzformáció, prediktív analitika, vizualizáció és jelentés készítés. Moduláris felépítésű és tartalmaz olyan funkciókat, mint megosztott tárház használat, felhasználói jogkörök kezelése, távoli kódfuttatás, időzített folyamatok.

Ingyenesen elérhető Desktop verziója is meglehetősen jól használható és opensource mivolta miatt könnyű hozzá bővítményeket írni.

Elérhetősége : Link

A Knime jelenleg (2013.11 hó) a 2.8 verziónál jár.


A KNIME az ETL folyamatokat úgynevezett Workflow projektekbe szervezve kezeli:


  • Minden folyamat speciális csomópontokból és ezen csomópontok közötti kapcsolatokból áll.
  • Minden folyamatnak vannak kezdő és vég csomópontjai.
  • A kezdő csomópontok általában adatokat olvasnak be, míg a folyamat végén levő csomópontok adatokat írnak vagy jelenítenek meg.
  • A köztes csomópontok transzformálásra, adattisztításra, … használhatóak.
  • Az adatok a csomópontok közötti kapcsolatokon keresztül kerülnek átadásra.

Minden csomópontnak meghatározott típusa és ezáltal meghatározott szerepe van a szerepek egymáshoz kapcsolódásával komplex rendszer kialakítására van lehetőség.

KNIME: az Eclips-en alapuló kiterjeszthető nyílt adatbányász platform, amely a pipeline (összecsövezés) paradigmára épül.
WEB elérés : www.knime.org  / tech.knime.org  













A KNIME az ETL és elemzési folyamatokat úgynevezett Workflow projektekbe szervezve kezeli:
Minden folyamat speciális csomópontokból és ezen csomópontok közötti kapcsolatokból áll. Minden folyamatnak vannak kezdő és vég csomópontjai. A kezdő csomópontok általában adatokat olvasnak be, míg a folyamat végén levő csomópontok adatokat írnak vagy jelenítenek meg. A köztes csomópontok transzformálásra, adattisztításra, … használhatóak. Az adatok a csomópontok közötti kapcsolatokon keresztül kerülnek átadásra.

Minden csomópontnak meghatározott típusa és ezáltal meghatározott szerepe van a szerepek egymáshoz kapcsolódásával komplex rendszer kialakítására van lehetőség.
A csomópontok szerepe lehet :
az adatok beolvasásáért és kiírásáért felelős (I/O) csomópontok, adatbázis műveletekhez kapcsolódó csomópontok, adatmódosító csomópontok, adatmegjelenítő csomópontok, …




















Nodokon levő kapcsolati pontok jelentése

 Adat port: üres nyílhegy adatok átvitelére szolgál a nodok között
 Adatbázis pont: barna négyszög adatbázisban képes műveletet végrehajtani
 Adatelemzési pont : Jósláshoz szükséges tanuló nodok és döntési nodok összeköttetésére szolgál









Nodok színe utal az általunk végzett művelet tipusra:

Narancs : adat beolvasás
Piros : kiírása az adatoknak
Sárga : földolgozás, módosítás
Világos barna Egyéb szolgáltatás
Kék  : megjelenítés, diagramok
Zöld : Elemezési műveletek (Világos zöld: tanító Sötétzöld: döntési múvelet)
Barna : Korrelációk
Szürke: Egyéb elemzések
Világos kék: Hurkok létrehozása




Nodokkal kapcsolatos jellemzők:





Jobb egérgombbal kért helyi menüvel a node beállítására, futtatására eredmény megtekintésére van lehetőség



























Be és kimenetek száma:
    -  A nodok baloldali csatlakozási pontja a bemenet, a jobb oldali csatlakozási pont a kimenet.
    - Van olyan node amelynek nincs bemenete vagy kimenete, ill. több bemenete vagy kimenete is lehet a funkciójától függően.





















A KNIME tehát egy olyan grafikus, jávás eszköz, amellyel teljes analízist végezhetünk: adat transzformáció, prediktív analitika, vizualizáció és jelentés készítés.
Moduláris felépítésű és tartalmaz olyan funkciókat, mint megosztott tárház használat, felhasználói jogkörök kezelése, távoli kódfuttatás, időzített folyamatok.
















Az ilyen építkezéssel kialakított komplex rendszerrel kiiktatható az erőforrás pazarló script
és utility programok írására, az adatok transzformálására majd adott esetben adatbázisba töltésére fordítandó idő töredékére csökken.

A folyamatokba vezérlési szerkezet, függőség csomópontok is elhelyezhetőek melyek révén akár bonyolultabb logikával is felvértezhetőek a workflow-k.


A KNIME ingyenesen elérhető eszköz, mely az ETL folyamatokat gyorsan és költséghatékonyan támogatja.
Segítségével eliminálható a programozás, csökkenthetőek a karbantartási költségek és a folyamat vizuális megjelenítése azon túl, hogy átláthatóvá teszi az összefüggéseket, segít a folyamatok dokumentálásában is.

A Knime egy eszköz mely támogatja prediktív analitikát (továbbiakban PA). A PA olyan statisztikai modelleket és egyéb empirikus módszereket jelent, amelyek empirikus előrejelzésekre szolgálnak, valamint a módszerek minőségi értékelésére,  az előrejelzések gyakorlati alkalmazhatóságára, azaz előrejelző képességének javítására törekszenek.

Eltekintve a gyakorlati hasznosság alapkritériumától, a PA fontos szerepet játszik a tudományos elméletben, a hipotézisek tesztelésében és relevanciavizsgálatában.
Ennél lényegében minél több múltbeli adatból jelezzük előre (modellezzük) a jövőbeli várható viselkedést.

Az ilyen eszközök az üzleti intelligenciát szolgáló PA az adatbányászat és a matematikai elemzés eszközeivel dolgoznak, hogy új, addig rejtett összefüggésekre leljenek az adattömegben rejlő mintázatok között, és előre jelezzék az üzleti trendeket például a fogyasztói aktivitásban, de az eredményei nem valósidejűek.

Az ilyen építkezéssel kialakított komplex rendszerrel kiiktatható az erőforrás pazarló script és utility programok írására, az adatok transzformálására majd adott esetben adatbázisba töltésére fordítandó idő töredékére csökken.

A folyamatokba vezérlési szerkezet, függőség csomópontok is elhelyezhetőek, melyek révén akár bonyolultabb logikával is felvértezhetőek a workflow-k.

















A KNIME tehát egy olyan ingyenesen elérhető eszköz, mely az ETL folyamatokat gyorsan és költséghatékonyan támogatja.

Segítségével eliminálható a programozás, csökkenthetőek a karbantartási költségek és a folyamat vizuális megjelenítése azon túl, hogy átláthatóvá teszi az összefüggéseket, segít a folyamatok dokumentálásában is.

A Knime egy eszköz mely támogatja prediktív analitikát (továbbiakban PA). A PA olyan statisztikai modelleket és egyéb empirikus módszereket jelent, amelyek empirikus előrejelzésekre szolgálnak, valamint a módszerek minőségi értékelésére,  az előrejelzések gyakorlati alkalmazhatóságára, azaz előrejelző képességének javítására törekszenek.

Eltekintve a gyakorlati hasznosság alapkritériumától, a PA fontos szerepet játszik a tudományos elméletben, a hipotézisek tesztelésében és relevanciavizsgálatában.
Ennél lényegében minél több múltbeli adatból jelezzük előre (modellezzük) a jövőbeli várható viselkedést.

Az ilyen eszközök az üzleti intelligenciát szolgáló PA az adatbányászat és a matematikai elemzés eszközeivel dolgoznak, hogy új, addig rejtett összefüggésekre leljenek az adattömegben rejlő mintázatok között, és előre jelezzék az üzleti trendeket például a fogyasztói aktivitásban, de az eredményei nem valósidejűek.

Az sikeres, eredményes adat elemzés főbb követelményei:
1. Nagy mennyiségű adat: Nagy mennyiségnél könnyebb kizárni az adatok esetiségét, ami csökkenti a véletlen összefüggések detektálását.
2. Sok tulajdonság: Ha az adatok minél több jellemzőt tartalmaznak, pontosabb összefüggések kimutatására van lehetőség.
3. Tiszta adatok: Hiányos, hibás vagy hamis bejegyzések növelik a bizonytalanságot, ami az eredményt is befolyásolhatja. Kapcsolódó kifejezés a GIGO (garbage in, garbage out).
4. Torzítatlan adat: A alap adathalmazból nem megfelelően kiválasztott adatok befolyásolhatják az egészre vonatkozó kimutatásokat. Ide tartozó kifejezés a BIBO (bias in, bias out)
5. Alkalmazási terület akcióképessége: A kinyert tudást gyakran nem használják fel, vagy a felhasználási terület túl merev annak hasznosításához. 6. A befektetés megtérülésének mérhetősége: Akkor sikeres az adatbányászat, ha megtérül a befektetés.

Az adat elemzés  feladatai:
1. Gyakori minták kinyerése: Adatok sorozatából gyakran előforduló (rész-) objektumok, elemhalmazok, sorozatok, részben rendezések vagy gráfok.
2. Attribútumok közötti kapcsolatok: Objektumok attribútumai közötti asszociációs- és korrelációs szabályok, funkcionális függőségek és hasonlóságok.
3. Klaszterezés: Objektumok előre nem definiált csoportokba sorolása úgy, hogy hasonló elemek azonos csoportba kerüljenek, különbözőek különbözőbe.
4. Sorozatelemzés: Hasonló (rész-) sorozatok keresése, elemzése, jövőbeni elemek regressziós módszerekkel történő meghatározása.
5. Eltéréselemzés: Általános jellemzőktől eltérő elemek, „különc pontok” meghatározása.






Az sikeres, eredményes adat elemzés főbb követelményei:

1. Nagy mennyiségű adat: Nagy mennyiségnél könnyebb kizárni az adatok esetiségét,
ami csökkenti a véletlen összefüggések detektálását.
2. Sok tulajdonság: Ha az adatok minél több jellemzőt tartalmaznak, pontosabb
összefüggések kimutatására van lehetőség.
3. Tiszta adatok: Hiányos, hibás vagy hamis bejegyzések növelik a bizonytalanságot, ami
az eredményt is befolyásolhatja. Kapcsolódó kifejezés a GIGO (garbage in, garbage out).
4. Torzítatlan adat: A alap adathalmazból nem megfelelően kiválasztott adatok
befolyásolhatják az egészre vonatkozó kimutatásokat. Ide tartozó kifejezés a BIBO (bias
in, bias out)
5. Alkalmazási terület akcióképessége: A kinyert tudást gyakran nem használják fel,
vagy a felhasználási terület túl merev annak hasznosításához.
6. A befektetés megtérülésének mérhetősége: Akkor sikeres az adatbányászat, ha
megtérül a befektetés.

Az adat elemzés  feladatai:

1. Gyakori minták kinyerése: Adatok sorozatából gyakran előforduló (rész-) objektumok,
elemhalmazok, sorozatok, részben rendezések vagy gráfok.
2. Attribútumok közötti kapcsolatok: Objektumok attribútumai közötti asszociációs- és
korrelációs szabályok, funkcionális függőségek és hasonlóságok.
3. Klaszterezés: Objektumok előre nem definiált csoportokba sorolása úgy, hogy hasonló
elemek azonos csoportba kerüljenek, különbözőek különbözőbe.
4. Sorozatelemzés: Hasonló (rész-) sorozatok keresése, elemzése, jövőbeni elemek
regressziós módszerekkel történő meghatározása.
5. Eltéréselemzés: Általános jellemzőktől eltérő elemek, „különc pontok” meghatározása.

Adattisztító, előkészítő lépések:

  • Importálás egységes tábla sturtúrába betöltés
  • Felesleges sorok és oszlopok eltávolítása
  • Különleges, vezérlő karakterek lecserélése, törlése, karakterkészlet egységesítése konverziók (Latin2, UTF8, CP1250, …)
  • Cellaformátumok beállítása, tizedespont vs. tizedesvessző, határoló karakterek (csere, konverzió)
  • Adatok egységesítése (pl. eltérő mértékegységek egységessé alakítása)
  • Adatok aggregálása (pl. eltérő mértékegységek)
  • Táblázat exportálása célformátumba
  • Felesleges adatok törlése:
    •  Sorok (pl. a kezdő sorok, fejlécek és az állomány végén lévő sorok, amelyek nem kapcsolódnak az eredményekhez)
    •  Oszlopok (pl. folyton ismétlődő, konstans, irreleváns, … )


Néhány a modellezéshez kapcsolódó elemzési fogalom:

  • munkahipotézis: Sejtés megfogalmazása
  • mérlegelés: a kapott tenzió csökkenés elegendően nagy ahhoz, hogy elegendőnek tekintsük
  • differenciáldiagnosztika: valóban a beavatkozás, esemény lánc okozta a tenzió csökkenést vagy valami más
  • mi lehet ez a más: szisztémás hatás vagy véletlen

A véletlen szerepének megítélése, a szignifikancia:

  • Nem lehet minden körülményt tekintetbe venni, sőt általában nem is érdemes.
  • Mérlegelni kell, hogy mely tényezőket vesszük figyelembe, illetve melyeket nem.
  • Mindannak a hatását, amit nem vettünk tekintetbe, összességében a véletlen hatásának fogjuk fel. A véletlen által is befolyásolt eseményekre kidolgozott valószínűségi és matematikai statisztikai törvények objektívek, de a határ szubjektív.
  • A szakértő tudása dönti el, hogy jó helyen húzza meg a határt/határokat.


Leíró statisztikai elemzés az alábbi mutatókat jelenti:
N: a megfigyelés elemszáma.

Sum, összeg: a változó értékeinek összege.

Mean, átlag, várható érték: a mintaátlag. (csak intervallum és numerikus adatoknál van). A nagy számok törvénye értelmében, ha az esetek száma nagy, akkor az átlag jól közelíti az eloszlás várható értékét, ami az eloszlás elméleti centruma.)

Median, medián: a rendezett minta középső eleme, vagy páros elemszámú minta esetén a két középső elem átlaga. (Nominális adathoz nem használható)

Modus, módusz: a változó esetei közül a leggyakrabban előforduló érték. Ha több ilyen is van akkor azokközül a legkisebb. (Ordinális és intervallum típusú adatoknál nem mindíg van értelme.)

Minimum, maximum: a változó legkisebb és a legnagyobb értéke.

Std. Deviation, szórás: a változó szórásának kiszámítása. Ez
programonként változó, hiszen van, ahol a „közönséges” szórást, de van
ahol a korrigált tapasztalati szórást kapjuk eredményül.

Kurtosis, csúcsosság: egy eloszlás csúcsosságának megállapítása az
azonos szórású normális eloszláshoz viszonyítva. Az alapértelmezésként
használt mutató pozitív értéke csúcsosabb, míg negatív értéke lapultabb
eloszlást jelez.

Skewness, ferdeség: egy eloszlás aszimmetriájának megállapítása az
azonos szórású normális eloszláshoz viszonyítva. Az alapértelmezésként
használt mutató pozitív értéke baloldali aszimmetriát, azaz jobbra (pozitív
irányban) hosszan elnyúló eloszlást, míg negatív értéke jobboldali
aszimmetriát jelez. Leegyszerűsítve, például a baloldali aszimmetria úgy
képzelhető el, hogy az ismérvértékek többsége átlag alatti.

Konfidenciaintervallum: egy általunk megadott megbízhatósági szintű
konfidenciaintervallum megállapítása a sokasági várható értékre.


X^2 Próbák:

a legrégibb, a legegyszerűbb, a legkevesebb feltételhez kötött és a legkevésbé érzékenyebb próba.


Alkalmazása az eloszlások összehasonlítása:
1. a két vagy több minta nem különbözik-e                        (homogenitás vizsgálat)
2. a minta megfelel-e egy már előre ismert eloszlásnak    (illeszkedés vizsgálat)



Feltétel:
csak teljes eseményrendszer esetén és csak abszolút frekvenciákkal szabad végezni a számítást kellő számú eset jusson az egyes kategóriákba

Kontingencia tábla
  • sorok: összehasonlítható csoportok
  • oszlopok: összehasonlításkor tekintetbe vett szempontok
Az egyes cellákban lévő számok azt jelentik, hogy az adott kritériumnak hányan feleltek meg.


ANOVA típusok:

Egy faktor. Egyszeres variancia analízis, amely az teszteli, hogy két vagy több minta átlaga egyenlő-e . Ez a technika a két átlagon végzett vizsgálatok (mint a t-teszt)
kiterjesztése.

Két faktor ismétlődéssel. Ez a módszer az egyszeres variancia analízis bővítése úgy, hogy minden adatsorból több adatot használ fel.

-Két faktor ismétlődés nélkül. Ez a módszer a két faktorú variancia analízis módosítása úgy, hogy minden adatsorból csak egy adatot használ fel. Azt feltételezi, hogy két vagy több minta átlaga egyenlő. Ez a technika a két átlagon végzett vizsgálatok (mint a t-teszt) kiterjesztése.

A Regresszió analízis lineáris regresszió számolást végez a “legkisebb négyzetek” (“least squares”) módszerével. Ez azt jelenti, hogy egy egyenest illeszt a mérési
eredményekre. Ekkor azt tudjuk elemezni, hogy befolyásol egy függő változót egy vagy több független változó.


Knime dupker:
deduplication_of_address_date
fuzzy_string_matching

Python nyelv alapjai 2

Szintaktikai szabályok:
  • Parancs vége az új sor ( ezt LF, CRLF és CR is jelezheti, ez gond jelenthet a windows-linux kódhordozásnál)
  • Strukturált program tömbök a fej utálni kettőspontot követő új sor behúzással szintezzük, amelynél az összetartozás szintje a behúzás mértékétől függ (behúzás történhet space vagy TAB karakterekkel, de mindig csak egyik)
  •  Egy utasítás több sorban is lehet, ezt jelezheti egy nyitva maradt kerek, szögletes vagy kapcsos zárójel vagy egy jel a félbehagyott sor végén.
  • Nagy és kisbetű különbözőnek számít az értelmezőjének.
  • Értékadás egyenlőség jellel (ekkor jön létre a kapcsolat a változónév és értéke között, ekkor automatikus, dinamikus típus átadás is történik)
  • Művelet végrehajtási (értelmezési) sorrend:
    • Zárójelek
    • Hatványozás
    • Szorzás, osztás
    • Összeadás, kivonás
    • Azonos prioritású operátorok végrehajtása balról jobbra történik.
  • Két érték felcserélése egy lépésben lehetséges
>>> a, b = b, a
Pytfon program működhet a parancsok konzolablakos (pl. IDLE = Integrated Development Environment) egyenkénti megadásával, vagy a program sorok állományba mentésével (ennek kiterjesztése .py) és az állomány futtatásával
 python.exe allomany.py
Karakter készlet beállítása volt a legelső programsorok egyike a 2. verziónál a magyar ékezetes betűhasználat céljára (pszeudo-commentek):
# -*-coding:ISO-8859-2-*-
# -*- coding:Utf-8 -*-
A 3. verziótól már az utf-8 az alapértelmezett betűkészlet amely egyből tartalmazza a magyar ékezetes betűket is.


FIGYELEM : A végű sorokban nem lehet komment (megjegyzés).  (Komment/megjegyzés jele a # karakter amely után álló tartalmat a sorvégéig az értelmező figyelmen kívül hagyja.)

Elsődleges prompt (rendszer készenlétet lejez command ablakban):
>>>
Másodlagos prompt (ezt behúzással jelzi a rendszer, hogy további adat/paraméter bevitelre vár. pl szekvenciák) ezt program sor behúzással jelezzük py állományban. Ebből az üzemmódból üres sor bevitellel léphetünk ki.
...
Kommentezés, program megjegyzések hozzáfűzési lehetőségei:
#  Program fájlban megjegyzések jelölése

Érték adás:
A változóhoz való érték hozzárendelés vagy értékadás: Egy olyan műveletet, amely kapcsolatot teremt a változónév és a változó értéke (tartalma) között. Jele : =
szov = '''a0
  aa '''     # Többsoros szöveges változó jelőlése (3 db ')

pi=3.14159
a1, b2, c3 = 10, 15, 20

Többszörös értékadás:
x = y = 77
a, b = 42

Műveletek:
2+3
3-2
2*3
10/2
2**2
10 % 3   # modulo :  egész osztásából származó maradék
>>> 15/4
3.75
>>> 15//4
3
>>> 15%4
3
>>> 13%4
1
>>> 13//4
3
>>> "hello lajos"
'hello lajos'
>>> 'hello MIE'
'hello MIE'
>>> "hello"
'hello'
>>> 'hello'
'hello'
>>> 3* 'Lajos' + 'OK'
'LajosLajosLajosOK'
>>>

 Relációs műveletek:
x == z       # x egyenlő z -vel
x != z       # x nem egyenlő z -vel
x < z        # x kisebb, mint y
x > z        # x nagyobb, mint z
x <= y       # x kisebb, vagy egyenlő mint z
x >= y       # x nagyobb, vagy egyenlő mint z

Sztringek (szöveges változók) kezelése
  • összefüzés           : szoveg1 + szoveg2
  • tartalmazza-e     : szoveg1 in szoveg2
  • karakter elérése : szoveg[1]
  • hossza                  : len(szoveg)
  • konvertálás
    • egésszé : int(szoveg)
    • Valóssá : float(szoveg)
  • kis betűsítés               : lower(szoveg)
  • nagy betűsítés             : upper(szoveg)
  • pozícióját adja vissza : szoveg.find(‘mie’)
  • előfordulásainak száma : szoveg.count(‘mie’)
  • vágás, hasítás             : szoveg.split(‘|’)
  • összefűzés : ‘-‘.join(szoveg_tomb)

Modulok használata elérhetővé teszi a beépített függvényeken kívül
továbbiak használatát.
Egyszerű modul importálás:
>>> import math # matematikai modul fügvényeinek elérhetővé tétele
A már beimportált modul függvényének használati szintaktikája:
< modul>.<függvény>
>>> math.cos(1)

Egyetlen függvény importálása nevesített importja és használata
>>> from math import cos
>>> cos(1)
Modul specialitások:
>>> math.cos.__doc__ # Függvény ismertetése:
>>> dir(math)        # Függvények kilistázása

 Felhasználói adat bemenetek 
input()         #  Mindig a típusa a beírt érték típusának felel 
raw_input()     #   Mindig karakterláncot ad vissza.

Speciális ciklus képzés (for +range)
range([kezdet,] vég [, lépés])  #  egészek listáját adja vissza, mely jól használható a for ciklusban
>>> for i in range(4, 20, 2)
..
>>> for i in range(100, -100, -3)
..

Saját függvények készítése és használata:
def sajat_fuggveny(param1):
   db = 0
   while (param1 > 0):
     db = db + 1
     param1= param1 - 1000
     return ezer_db
..
e_sz = sajat_fuggveny (100000)  # használat

Python azonosítok és objektumok névképzési szabályai:
  • betűvel vagy aláhúzásjellel kezdődnek
  • ugyanezekkel és számjegyekkel folytatódhat
  • az egy és két aláhúzásjellel kezdődő azonosítóknak különleges szerepük is van

Fenntartott szavak:
False class finally is return
None continue for lambda try
True def from nonlocal while
and del global not with
as elif if or yield
assert else import pass
break except in raise

Közvetlen program indításkor végrehajtandó művelet jelölése py állományban: (pl. cmd ablakban :  python  mie_prg.py),
if __name__ == "__main__":
  app.run(port=1962, debug=True)
__name__ => az aktuális modul nevét tartalmazza (Python fájl neve kiterjesztés nélkül)
__main__ => adott py fájl a program belépési pontja
Ezzel a szerkezettel megoldható, hogy a py fájl közvetlenül indítva elinduljon,
más modulból importálva viszont ne kezdjen dolgozni.

Építkezés alapja a komponens importálás és belső név adás a használathoz (az állomány kezdő részében szerepel)
from flask import Flask, jsonify
mie_app = Flask(__name__)


Python program minták
— Változó beállítása és érték kiírása
 >>> name1 = "Kecskeméti Lajos"
 >>> print(name1)
 Kecskeméti Lajos
 >>> name1
 'Kecskeméti Lajos'
— Tömb(list) változó beállítása és érték kiírása (tömb határoló a vessző)
 >>> tomb = [1, 3, 5, 7, 9]
 >>> tomb[1]
 3
>>> szinek = ['piros' 'Kék', 'Zöld']
 >>> szinek [1]
 'Zöld'
>>> szinek [-1]
 'Zöld'
>>> szinek [0]
 'pirosKék'
>>> szinek [:2]
 ['pirosKék', 'Zöld']
 >>> import os
 >>> utvonal = os.getcwd()
 >>> utvonal
 'C:Python34_32bit'

Programozási alapfogalmak



Paradigma: Felfogásmód, gondolkodásmód, szemlélet, látásmód, megoldási technikák.

Strukturált program:
Egyetlen absztrakt utasítás. Felbontjuk elemibb utasítások sorozatára. Felbontás addig, míg a gép által érthető lesz.

Procedurális, vagy moduláris programozási paradigma:
– A procedurális főprogramot részekre, modulokra (packages, units) bontjuk.
– Minden modul egy vagy több alprogramra oszlik, melyek eljárásokból, függvényekből szubrutinokból
állnak. Az alprogramok további alprogramokat tartalmaznak.
– Minden hatókör tartalmaz olyan neveket, melyeket rajta kívül nem láthatunk.

Objektumorientált program: Adatok és műveletek egy egységben. Feladat: az önálló felelősséggel bíró egységek meghatározása, a közöttük fennálló kapcsolatok meghatározása.

Objektumorientált programozási paradigmák
Objektumok: Egy egységben az adatok és a rajtuk végzett műveletek. Egyszerre a modularitás és a
struktúra elemei.
– Absztrakció: Gondolkozhatunk a rendszer elemeiről, mit ‘aktorokról’ melyek végrehajtják a feladatokat, megváltoztatják állapotukat, kommunikálnak más objektumokkal, anélkül, hogy ismernénk az implementációs részleteket.
– Egységbezárás, vagy az információ elrejtése: Az objektumokat nem lehet kívülről nem várt módon manipulálni. Csak meghatározott metódusokon keresztül módosítható az állapot.
– Polimorfizmus: A referenciák különböző típusú objektumokra hivatkozhatnak, és a hivatkozott objektumoktól függő viselkedést produkálhatnak.
– Öröklés: Létrehozhatók már létező típusok specializációi, melyek használhatják (és bővíthetik) a létező típusok műveleteit anélkül, hogy újra meg kellene valósítani őket.

Program komponens:
– A kód egy fizikailag elkülönített, a telepítés során önálló egységet képező (lefordított) része.
– A komponens jellemzően több osztályt tartalmaz.
– Komponensek pl. az exe és dll állományok.

Osztály, objektum
– Az osztály egy típus megvalósítása.
– Az objektum az osztály egy példánya, előfordulása.
– Az osztály tartalmazza a adattagok típusainak leírását, amely alapján a konstruktor az objektum számára a helyfoglalást végzi.
– Az osztály tartalmazza a metódusok kódját. A metódusokat objektumokra hívjuk meg, és az objektumban tárolt adatokon dolgoznak. (Kivétel statikus metódusok, lásd később.)
– Az osztály tartalmazhat további osztály leírásokat. Ezeket beágyazott osztályoknak (nested class) hívjuk.

Példányosítás:
– Egy osztálynak akárhány példánya, objektuma lehet.
– Az objektumok a memóriában más-más területen helyezkednek el.
– Az objektum adattagjainak a futás során változik az értéke, változik az objektum állapota.
– Egy adott pillanatban több objektum adatai is megegyezhetnek, ilyenkor az objektumok állapota megegyezik.

Függvény átdefiniálás: ( Overloading, túlterhelés)
– A függvény azonosítása a szignatúrája (neve és paraméterlistája) alapján történik.
– A paraméterlistában a paraméterek típusa és sorrendje rögzített. Nevük nem egyezhet meg a tagváltozók nevével! (Hisz azonos szinten érhetők el.)
– Több azonos nevű, de eltérő paraméterlistájú függvényt hozhatunk létre.
– A fordító számára híváskor egyértelműnek kell lennie melyiket hívjuk.

Alapértelmezett paraméterek:
– A paramétereknek alapértelmezett kezdőértéket adhatunk.
– Lehetővé teszi, hogy híváskor az adott paraméter megadást elhagyhassuk.
– Előnye:
• Sok paraméter értéke többnyire egy szokásos érték. Nem kell kiírni, sőt tudni sem.
• A különböző paraméterszámú átdefiniált függvényeket egy függvénnyel adhatjuk meg.
– Alapértelmezés jobbról balra halad
– A paraméterlista sorrendje, típusa kötelező.
– A nem alapértelmezett paraméterek az elsők.
– A leggyakrabban változó paramétereket adjuk meg elöl, a többnyire alapértelmezett paramétert a végén.

Konstruktor
A konstruktor az osztály egy speciális tagfüggvénye.
– Feladata: az objektumok létrehozása, inicializálása. Később további feladatok.
– Neve általában megegyezik az osztály nevével.
– Visszatérési értéke nincs.

Destruktor
– A destruktor az osztály egy speciális tagfüggvénye.
– Feladata: az objektumok felszámolása.
– Visszatérési értéke nincs.

Egységbezárás (Encapsulation)
– Az adatokat és a rajtuk végzett műveleteket egységbe zárja. Ez az egység az osztály.
– Az osztály egy típus megvalósítása, mely magába foglalja a típus adattagjait (tagváltozóit), és a rajtuk
végezhető műveleteket (tagfüggvények, metódusok).
– A láthatóságok vagy hozzáférési szintek (visibility, accessibility) tovább bővítik az egységbezárás
lehetőségeit. Segítségükkel megvalósítható az ellenőrzött adatbevitel, adatolvasás.
– Az egységbe zárás lehetővé teszi, hogy az osztály adattárolása módosítható legyen, anélkül, hogy az őt
használó osztályok kódját módosítanunk kellene.

Property (tulajdonság) :
– A tulajdonság (nagybetűvel) a hívó kódban úgy viselkedik mint egy
tagváltozó, de értékadáskor a set metódusa hívódik, míg olvasáskor a
get metóduson keresztül jutunk az adathoz.
– A tulajdonság segítségével gyakran egy adattag egy részét, vagy több
elrejtett adattagban tárolt adatot kezelünk.
– Saját készítésű vezérlő esetén a tulajdonság megjelenik a Properties
ablakban, kezdőértéke a fejlesztés során kényelmesen állítható be.

Struktúra (struct):
Főként különböző típusú adatok tárolására használják, de tagfüggvénye is lehet.

Interfész (interface):
Nem tartalmaz adattagokat, és nem példányosítható. Alapértelmezett láthatóságuk is eltérő.

this vagy Self
– A metódusok kódja az osztályleírásban tárolódik.
– A metódusok az objektum adatain dolgoznak.
– A this az aktuális objektumra mutat, ill. hivatkozik.
– Ha egy másik objektum tagfüggvényének át akarjuk adni a hívó objektumot paraméterként, a this-t használjuk.
– A futásidejű típusinformáció lekérdezésére.


Így gondozzuk Anacondánkat (python haladó)

A conda beállítás (frissítés / újra installálás) Terminál ablak indítása:  Conda -> Environments -> base(root) run -> Open ...