Informatika1-2012/HF4
A MathWikiből
(Változatok közti eltérés)
(2 szerkesztő 7 közbeeső változata nincs mutatva) | |||
1. sor: | 1. sor: | ||
====4. házi feladat==== | ====4. házi feladat==== | ||
+ | (kitűző/javító: Pálovics Róbert) | ||
Gyakori feladat, hogy két halmazról kell eldöntenünk, mennyire "hasonlóak". Például | Gyakori feladat, hogy két halmazról kell eldöntenünk, mennyire "hasonlóak". Például | ||
11. sor: | 12. sor: | ||
*Írj sage függvényt, mely | *Írj sage függvényt, mely | ||
* bemenetként megkap két listát, | * bemenetként megkap két listát, | ||
− | * kiszámolja a két lista Jaccard- | + | * kiszámolja a két lista Jaccard-indexét, |
* nem dolgozik multiplicitással, tehát például a ['ferrari','mercedes','ferrari', 'mercedes'] és ['mercedes','williams','mercedes'] listák hasonlósága 1/3. | * nem dolgozik multiplicitással, tehát például a ['ferrari','mercedes','ferrari', 'mercedes'] és ['mercedes','williams','mercedes'] listák hasonlósága 1/3. | ||
* A függvény neve legyen "jaccard_index". | * A függvény neve legyen "jaccard_index". | ||
* Számítsd ki a függvénnyel a ['U2','Isis', 'Slash','sleepmakeswaves', 'Coldplay', 'Maybeshewill'] és ['Isis','Slash','Amplifier', 'Led Zeppelin', 'U2'] listák hasonlóságát! | * Számítsd ki a függvénnyel a ['U2','Isis', 'Slash','sleepmakeswaves', 'Coldplay', 'Maybeshewill'] és ['Isis','Slash','Amplifier', 'Led Zeppelin', 'U2'] listák hasonlóságát! | ||
− | * Írj "jaccard_multi" függvényt, mely a metszet és únió számítása esetén a halmazok elemeit multiplicitással veszi figyelembe. Tehát az előző példára visszatérve: ['ferrari','mercedes','ferrari', 'mercedes'] és ['mercedes','williams','mercedes'] listák hasonlósága most 2/ | + | * Írj "jaccard_multi" függvényt, mely a metszet és únió számítása esetén a halmazok elemeit multiplicitással veszi figyelembe. Tehát az előző példára visszatérve: ['ferrari','mercedes','ferrari', 'mercedes'] és ['mercedes','williams','mercedes'] listák hasonlósága most 2/5. |
+ | * Ellenőrizd le az 1/3 (jaccard_index) és 2/5 (jaccard_multi) eredményket az autós listákra. | ||
* Segítség: a gyakorlat "szószámláló" és "szótár összehasonlító" függvényeinél látott ötletek segíthetnek. Azonban a feladat nagyon sokféleképp megoldható, és ennek megfelelően sokféle jó megoldást el tudunk fogadni. | * Segítség: a gyakorlat "szószámláló" és "szótár összehasonlító" függvényeinél látott ötletek segíthetnek. Azonban a feladat nagyon sokféleképp megoldható, és ennek megfelelően sokféle jó megoldást el tudunk fogadni. | ||
− | A házit most a következőképp küldjétek: A sage worksheetet a szokásos konvenció alapján ( | + | A házit most a következőképp küldjétek: A sage worksheetet a szokásos konvenció alapján (T2_HF4_kovacspisti) nevezzétek el, majd osszátok meg a sage szerveren '''palovics''' felhasználóval. Ha bármi kérdés merül fel, jelezzetek, írjatok nyugodtan. |
+ | |||
+ | Update: Ha meg van nyitva egy worksheet-etek, akkor a megosztó gomb, jobb fent a kék Share gomb, utána írjátok a box-ba a nevet akivel meg akarjátok osztani, majd az Invite Collaborators gomb. |
A lap jelenlegi, 2012. október 23., 11:15-kori változata
4. házi feladat
(kitűző/javító: Pálovics Róbert)
Gyakori feladat, hogy két halmazról kell eldöntenünk, mennyire "hasonlóak". Például
- meg kell mondanunk, hogy két vásárló mennyire vett azonos termékeket
- két ember mennyire olvas hasonló könyvket, hallgat azonos zenét, ...
Az alapfeladat, hogy eldöntsük Sage-ben két listáról, hogy "mennyire tartalmaznak azonos elemeket". (A listák egy-egy matematikai értelemben vett halmaznak felelnek meg.)
- Multiplicitás nélküli halmazok összehasonlításának egyik módja a Jaccard index kiszámítása. Ez egyszerűen két halmaz metszetének és uniójának hányadosa: Jaccard index
- Írj sage függvényt, mely
- bemenetként megkap két listát,
- kiszámolja a két lista Jaccard-indexét,
- nem dolgozik multiplicitással, tehát például a ['ferrari','mercedes','ferrari', 'mercedes'] és ['mercedes','williams','mercedes'] listák hasonlósága 1/3.
- A függvény neve legyen "jaccard_index".
- Számítsd ki a függvénnyel a ['U2','Isis', 'Slash','sleepmakeswaves', 'Coldplay', 'Maybeshewill'] és ['Isis','Slash','Amplifier', 'Led Zeppelin', 'U2'] listák hasonlóságát!
- Írj "jaccard_multi" függvényt, mely a metszet és únió számítása esetén a halmazok elemeit multiplicitással veszi figyelembe. Tehát az előző példára visszatérve: ['ferrari','mercedes','ferrari', 'mercedes'] és ['mercedes','williams','mercedes'] listák hasonlósága most 2/5.
- Ellenőrizd le az 1/3 (jaccard_index) és 2/5 (jaccard_multi) eredményket az autós listákra.
- Segítség: a gyakorlat "szószámláló" és "szótár összehasonlító" függvényeinél látott ötletek segíthetnek. Azonban a feladat nagyon sokféleképp megoldható, és ennek megfelelően sokféle jó megoldást el tudunk fogadni.
A házit most a következőképp küldjétek: A sage worksheetet a szokásos konvenció alapján (T2_HF4_kovacspisti) nevezzétek el, majd osszátok meg a sage szerveren palovics felhasználóval. Ha bármi kérdés merül fel, jelezzetek, írjatok nyugodtan.
Update: Ha meg van nyitva egy worksheet-etek, akkor a megosztó gomb, jobb fent a kék Share gomb, utána írjátok a box-ba a nevet akivel meg akarjátok osztani, majd az Invite Collaborators gomb.