środa, 17 lipca 2013

Fuzzy matching vlookup - Łączenie tabel w Excelu.

Łączycie czasem bazy w excelu? Co jeśli pochodzą z dwóch różnych źródeł? A np. nazwy firm niedokładnie zgadzają się ze sobą? Z pomocą może przyjść fuzzy lookup, który potrafi (zdaniem autorów) połączyć tabele używając kolumn kluczy, indeksów, które niedokładnie się ze sobą zgadzają. Dotąd słówka fuzzy (fuzzy search, fuzzy match - wyszukiwanie rozmyte, dopasowanie rozmyte) używałem w odniesieniu do programów wspomagających tłumaczenie. Dziś okazuje się, że przyda się również do obróbki danych.
Więcej tutaj: http://blog.contextures.com/archives/2011/05/06/fuzzy-lookup-add-in-for-excel-2010/
http://topliners.eloqua.com/community/do_it/blog/2012/10/11/fuzzy-lookup-matching-addon--excel 


A tutaj sam dodatek Microsoftu do ściągnięcia: http://www.microsoft.com/en-us/download/confirmation.aspx?id=15011

A dla nie posiadających Excela 2010? Istnieją podobne rozwiązania, np. Funkcje Zdefiniowane przez Użytkownika - User Defined Functions, które będą działały w Excelu 2007.
np.
http://www.mrexcel.com/forum/excel-questions/195635-fuzzy-matching-new-version-plus-explanation-28.html#post3145162  (sprawdzone przeze mnie i działa)

http://www.mrexcel.com/forum/excel-questions/366237-fuzzy-lookup-amended.html
http://www.mrexcel.com/forum/excel-questions/195635-fuzzy-matching-new-version-plus-explanation.html

Więcej o fuzzy... :
http://en.wikipedia.org/wiki/Fuzzy_logic
http://en.wikipedia.org/wiki/Approximate_string_matching

wtorek, 16 lipca 2013

Genialny pomysł nauczania dzieci programowania i robotyki? - Scratch for Arduino

Zabłądziłem na stronę  Seaside.citilab.eu . Jest tam genialny pomysł połączenia Scratch'a, środowiska programowania dla dzieci (układania programu, jego kolejnych kroków i pętli z klocków) z robotyką (tanie i proste w programowaniu sterowniki Arduino wykorzystywane przez hobbystów).
Przypomnijmy projekt robota {pajączka}, którego budowa opisana jest i przedstawiona w postaci lekcji video w Khanacademy. Lekcję przeprowadzono z powodzeniem z szóstoklasistami w amerykańskiej szkole. Połączmy to z nauką programowania z klocków. Otrzymamy doskonały projekt nauczania informatyki i robotyki!

Argumenty za: 

Pajączek (projekt Khanacademy) choć niepozorny jest robotem z prawdziwego zdarzenia. Projekt jego budowy można rozwinąć rozmawiając o ogólnym schemacie blokowym dowolnego urządzenia automatycznego. Jest tutaj wszystko bo i komputer (czym jest?) i sterownik programowalny... Młodsze dzieci załadują program, starsze będą mogły próbować coś w nim zmienić i zobaczyć, co się stanie. Mam podejrzenie, że obejrzą go i tatusiowie i nauczyciele informatyki, obejrzy też krótkofalowiec, który chciałby zbudować automatyczną skrzynkę antenową i majsterkowicz, który chciałby zbudowac inteligentny dom. Zamiast uczyć się programować w LOGO i obserwować ruszającego się po ekranie żółwia, można zaprogramować zrobionego przez siebie robota w ramach lekcji informatyki. Wokół tego tematu można budować inne, np. wykorzystanie tanich sterowników, Arduino, w edukacji, wykorzystanie tanich komputerów w projektach edukacyjnych. (istnieją platformy umożliwiające współpracę Raspberiego i Arduino). Ten projekt może zarazić.

Arduino Nano na Allegro można kupić poniżej 50zł w detalu a sterownik silniczków L298 po 20 zł w detalu. Więc w hurcie na pewno dużo taniej, przy np. dofinansowaniu na działania edukacyjne np. z urzędu miasta czy UE można uzasadnić taki zakup. (cały czas myślę tutaj o projekcie warsztatach robotycznych dla dzieci) Do programowania nie trzeba używać dedykowanego urządzenia, wystarczy dowolny komputer, niekonieczne z windows. Oprogramowanie jest free of charge.

Subsytuty/alternatywy:

Dla Arduino:

Lego WeDo, zestaw robotyka dla 7+ wraz z aplikacją to na Allegro ponad 900 zł. Lego Mindstorms education... ponad 1200zł... Wszystko zaklejone tworzywem, nie widac co jest w środku, nie można opowiedzieć, jak działa, nie można nic zepsuć a jeśli już się uda to trudno naprawić - elektrośmieć.

Są to zestawy kupowane często z myślą o nauczaniu na płatnych kursach robotyki dla dzieci... drogo, jak na zarażanie dzieci technologią. I nie widać, co jest w środku i nic nie można zepsuć...
Po uczestnictwie na zajęciach (powiedzmy, że jest to min. 30zł za lekcję) nie można tego robota zabrać do domu. A potem rozebrać jak się znudzi i wykorzystać np. do zbudowania kontrolera klimatu w akwarium albo alarmu, ktory odstraszy siostrę przed podkradaniem słodyczy...

Dla Scratcha (bez Arduino):

Lego: rusza się żółw po ekranie. Może być bardzo nudne.
Uproszczone języki jak wspomniany przeze mnie Small Basic. Lekcja pierwsza, jak wyświetlić "Hello World". Pierwsze wrażenie może nie być oszałamiające.

niedziela, 14 lipca 2013

SmallBasic - nauka programowania visual basic.

Microsoft udostępnił ciekawe i wygodne narzędzie IDEdo nauki programowania. http://smallbasic.com/about.aspx. SmallBasic dużo podpowiada, jego programy mogą być kompilowane do exe i eksportowane do standardowego Visual Basic. Cały program można nosić na kluczu:
Cytat ze źródła: http://social.msdn.microsoft.com/forums/en-US/4e5dba88-cbaf-43a7-ac26-689f89fd82ba/portable-small-basic

Get SmallBasic.msi

Execute :
msiexec /a Drive:\<Folder>\SmallBasic.msi /qb TARGETDIR=Drive:\<YourFolderPortable>

Example :
msiexec /a C:\Download\SmallBasic.msi /qb TARGETDIR=F:\SmallBasicPortable

poniedziałek, 1 lipca 2013

Analiza statystyczna - darmowe narzędzia.

Na dziś, mój wybór:

PSPP - http://sourceforge.net/projects/pspp4windows/ - darmowy klon SPSS.
Salstat2 - http://code.google.com/p/salstat-statistics-package-2/ - może służyć jako nakładka do analizy statystycznej danych udostępnianych przez serwer mysql.
Past - http://folk.uio.no/ohammer/past/ - nie tylko do analizy danych paleontologicznych,

===ponadto====
SofaStats - http://sourceforge.net/projects/sofastatistics - na Sourceforge dobre komentarze, nie sprawdziłem.
SmathStudio - http://www.smathstudio.com/ raczej program matematyczny, darmowy odpowiednik Mathcada.