Concerto, czyli R dla psychologów

Dzisiaj Maria Rafalak przedstawi nowinkę prosto ze świata psychometrii, czyli o platformie Concerto. Opartego o R wsparcia w prowadzeniu badań z użyciem testów CAT. Na początku będzie trochę o samym narzędziu, a w drugiej części o wrażeniach z pracy z nim.


Maria Rafalak
Pracownia Testów Psychologicznych

Concerto to platforma przygotowana przez Centrum Psychometryczne Uniwersytetu Cambridge w Wielkiej Brytanii. Concerto jest projektem opensource’owym dedykowanym dla psychologów (oraz innych specjalistów) zbierających dane w środowisku online. Jego największą zaletą jest możliwość łatwego tworzenia testów adaptacyjnych CAT (Computer Adaptive Tesing), czyli testów, w których dobór kolejnych pytań jest uzależniony od odpowiedzi udzielanych przez osobę badaną.

Rozwiązanie bazuje na silniku obliczeniowym R. Domyślnie w platformie zainstalowane są pakiety rjson, RMySQL, session oraz catR. W razie potrzeby istnieje możliwość instalacji innych pakietów niezbędnych do obliczeń.
Concerto posiada przejrzysty interface (dostępny również w wersji polskiej), który ułatwia tworzenie testów użytkownikom nie zaznajomionym z programowaniem.

concerto1

Czytaj dalej Concerto, czyli R dla psychologów

Jutro SER a dzisiaj trendy na rynku pracy dla Data Scientistów

Jutro o godzinie 18 na MiNI (Koszykowa 75, Warszawa) zaczynamy 18. (o matko, już osiemnastka!) Spotkania Entuzjastów R. Będzie i o programowaniu z Rcpp i o analizie danych. Można zarejestrować się tutaj.
Zapraszamy!

Współorganizatorka SERów, Olga Mierzwa, miała wczoraj prezentację o rynku pracy dla Data Scientistów. Poniżej kilka zdań od Olgi.

Screen Shot 2016-05-18 at 18.56.29


Olga Mierzwa

Wczoraj odbyło się 15 spotkanie Data Science Warsaw, podczas którego miałam przyjemność opowiadać o trendach na rynku pracy data science na podstawie doświadczeń z współprowadzenia datahero.tech. Na meetup przyszło ok. 80 osób, a oprócz mnie o komunikowaniu danych opowiadali Piotr Arak z Polityka Insight i Vadim Makarenko z BiqData.
Prezentacja „Trendy rynku pracy Data Science” przedstawiała sytuację na rynku pracy w Polsce w oparciu o analizy pracuj.pl i datahero.tech. Pokazała przykładowe informacje jakie można wyciągnąć analizując GitHuba, Stackoverflow oraz Upwork.

Czy jesteś ciekaw jakie funkcje i pakiety R wykorzystują polscy użytkownicy GitHuba?
O co najczęściej pytają użytkownicy na Stackoverflow pracując w R i Pythonie? A co jest już passé?
A może ile zarabia Data Science Freelancer w Polsce czy na świecie?

Prezentacja dostępna jest pod linkiem: http://slides.com/olgamierzwa/deck-1.

Podziękowania dla Grupy MI2 za udostępnienie analiz pracuj.pl.

Kto jest młodszy a kto jest starszy od Ciebie?

Na blogu Flowingdata umieszczono świetną grafikę, prezentująca dla danego wieku jaki procent populacji jest starszy a jaki młodszy od ciebie.

Struktura wieku populacji w Polsce jest inna, ale można zobaczyć jak to te proporcje wyglądają za oceanem.

Np. kto by przypuszczał, że dla 35 latka okazuje się, że 50% populacji jest starsza a połowa młodsza?

Screen Shot 2016-05-12 at 20.53.43

All your models belong to us: how to combine package archivist and function trace()

Let’s see how to collect all linear regression models that you will ever create in R.

It’s easy with the trace() function. A really powerful, yet not that popular function, that allows you to inject any R code in any point of a body of any function.
Useful in debugging and have other interesting applications.
Below I will show how to use this function to store a copy of every linear model that is created with lm(). In the same way you may store copies of plots/other models/data frames/anything.

To store a persistent copy of an object one can simply use the save() function. But we are going to use the archivist package instead. It stores objects in a repository and give you some nice features, like searching within repository, sharing the repository with other users, checking session info for a particular object or restoring packages to versions consistent with a selected object.

To use archivist with the trace() function you just need to call two lines. First one will create an empty repo, and the second will execute ‘saveToLocalRepo()’ at the end of each call to the lm() function.

Now, at the end of every lm() function the fitted model will be stored in the repository.
Let’s see this in action.

All models are stored as rda files in a disk based repository.
You can load them to R with the asearch() function.
Let’s get all lm objects, apply the AIC function to each of them and sort along AIC.

The aread() function will download the selected model.

Now you can just create model after model and if needed they all can be restored.

Read more about the archivist here: http://pbiecek.github.io/archivist/.

Tu Data Science, tam Data Science

Gdzie nie spojrzeć tam Data Science. Poniżej kilka ciekawych źródeł, treści, na które się ostatnio natknąłem.

19.4% Data Scientistów w SERze

Paweł Przytuła na swoim blogu zrobił ciekawą analizę warszawskich meetupów. Bardzo ciekawy wpis zakończony zbiorem wykorzystanych do analizy narzędzi (!). Dowiedziałem się np. o wtyczce https://data-miner.io/.

masterR

Data Science a przemysł papierniczy

Skoro już mowa o SERze. Za tydzień, na najbliższym Spotkaniu Entuzjastów R Zygmunt Zawadzki (analityk danych) opowie o pakiecie Rcpp i powstającym pakiecie FSelectorRcpp do wyboru cech a Michał Janusz (data scientist) opowie jak wykorzystać R do wyszukiwania zależności w danych o procesie produkcji papieru.

Fabryki a Data Science

A skoro mowa o produkcji to na myśl przychodzi Łódź i oczywiście Data Science Łódź. Tydzień temu miałem przyjemność poprowadzić prezentację o wizualizacji danych i pakiecie ggplot (dostępna tutaj). Jak wizualizacja danych ma się do Data Science? W znanym diagramie Venna jest hacking, math i domain knowledge ale gdzie jest wizualizacja?

Rynek pracy dla Data Science

W ww. prezentacji jest kilka slajdów dotyczących analizy ofert pracy z pracuj.pl. Chcielibyście dowiedzieć się więcej? Przyjdźcie na prezentację Olgi Mierzwa z DataHero, która za tydzień będzie miała miejsce na Data Science Warsaw. Będą też prezentacje Piotr Araka z Polityka Insight i Vadima Makarenko z BIQdata. Trzy powody dla których warto tam być.

KNIME a Data Science

I jeszcze nawiązując do Data Science Łódź. Na kolejnym spotkaniu będzie referat o KNIME. Co to? Cytując z https://www.knime.org/about: KNIME Analytics Platform is the leading open solution for data-driven innovation, designed for discovering the potential hidden in data, mining for fresh insights, or predicting new futures.
Coś jest na rzeczy, ponieważ o KNIME będzie też referat na najbliższym PAZURZe.

Więcej o wizualizacji

Pisząc o Data Science trzeba też wspomnieć o Data Science Wrocław – już jutro. Między innymi będzie prezentacja poświęcona wizualizacji wielowymiarowych danych. I o eRce Kraków – za tydzień będą prezentacje poświęcone ryzyku, pierwsza o ryzyku śmierci, druga o ryzyku niespłacenia kredytu.

Dzieje się.

Line of best fit by eye

Screen Shot 2016-05-05 at 12.57.38
W ramach projektu Beta i Bit przygotowaliśmy zadanie na ważenie T-Rexa na podstawie pomiarów samych kości. Zadanie przygotowane dla klas 3-4 podstawówek, choć może być interesujące też dla starszych dzieci (będziemy testować). Więcej o tym zadaniu napiszę po 1 czerwca, wtedy startujemy szerzej z projektem B&B. Ale w skrócie zadanie polega na tym, że mając linijkę i pomiary innych zwierząt, można znaleźć całkiem dobre oszacowanie masy T-Rexa. Nie potrzebne do niego są ani wzory na regresję liniową ani nawet kalkulator. Można więc zacząć od budowania intuicji a później pokazać jak tę krzywą znaleźć w sposób optymalny.

Okazuje się, że taka intuicyjna metoda ma nawet swoją nazwę ,,Line of best fit by eye” lub ,,Informal line of best fit”.

W niektórych szkołach przedstawia się ją na etapie grade 8th (odpowiednik drugiej klasy gimnazjum w Polsce). Na khan academy lub youtube można znaleźć kilka przykładów (np. tutaj https://www.youtube.com/watch?v=9nE7j3ZZC_Q, ale jest takich materiałów więcej).

Można nawet znaleźć badania prowadzone na nauczycielach, weryfikujące ich gotowość do omawiania zależności w danych (np. ciekawy artykuł tutaj).

Na świecie więc takie zadania się praktykuje. Kto wie, może materiały z zagadkami Beta Bit trafią do szerszego użycia w polskich szkołach?

Już niedługo matura…

Już niedługo matury, warto więc przypomnieć aplikację pozwalającą na sprawdzenie jak rozwiązywane były w wybranej szkole zadania na maturze 2015.

Czasem takie zestawienia kryją ciekawe historie.

Po prawej stronie przedstawione są wyniki dla warszawskiego liceum im. Staszica, które specjalizuje się w matematyce i naukach ścisłych. Jeżeli przyjrzymy się jaki procent maturzystów rozwiązało poprawnie zadania, to okaże się, że dla prawie wszystkich zadań mamy skuteczność ponad 90%.
Czyli zdecydowanie wyższą niż średnia w kraju.

Ale (zawsze jest ale ;-)) jest jedno zadanie, gdzie pomyłek było kilkukrotnie/kilkunastokrotnie więcej niż przy pozostałych i jest to trickowe zadanie 8 za jeden punkt (nawiasem mówiąc – wykres funkcji). Gdybym był nauczycielem w Staszicu to porozmawiałbym z maturzystami o tym wykresie.
Choć nie ma co robić z tego powodu tragedii, to zadanie wypadło słabo we wszystkich ,,dobrych liceach” w różnych miastach.

Aplikacja dostępna jest pod adresem http://mi2.mini.pw.edu.pl:8080/SmarterPoland/matura2015/.
Do zbudowania tej aplikacji wykorzystano dane udostępnione przez pakiet ZPD wykonany przez Instytut Badań Edukacyjnych.

Call for Papers: eRum 2016 (European R users meeting)

6_edited

The European R users meeting (eRum) is an international conference that aims at integrating users of the R language. eRum 2016 will be held on October 13 and 14, 2016, in Poznan, Poland at the Poznan University of Economics and Business. We already confirm the following invited speakers: Rasmus Bååth, Romain Francois, Ulrike Grömping, Matthias Templ, Heather Turner, Przemysław Biecek, Marek Gągolewski, Jakub Glinka, Katarzyna Kopczewska and Katarzyna Stąpor.

We would like to bring together participants from around the world. It will be a good chance to exchange experiences, broaden knowledge of R and collaborate. The conference will cover topics including:

• Bayesian Statistics,
• Bioinformatics,
• Economics, Finance and Insurance,
• High Performance Computing,
• Reproducible Research,
• Industrial Applications,
• Statistical Learning with Big Data,
• Spatial Statistics,
• Teaching,
• Visualization & Graphics,
• and many more.

We invite you to participate in eRum 2016:
(1) with a regular oral presentation,
(2) with a lightning talk,
(3) with a poster presentation,
(4) or without a presentation or poster.

Due to limited space at the conference venue, the organizers have set a limit for the number of participants at 250 and persons with regular/lighting talks/posters will be considered first and those attending without a presentation or poster will be handled on a first-come, first-served basis.

Please make your submission online at http://erum.ue.poznan.pl/#register. The submission deadline is June 15, 2016. Submitters will be notified via email by July 1, 2016 of acceptance. Additional details will be announced via the eRum conference website.

Kwity z Panamy, neo4j oraz cypher – czyli Data Science w akcji


Panama Papers to największy wyciek danych w historii. Ponad 11 milionów dokumentów składa się na 2.6TB. Jak ogarnąć taką ilość danych? Przecież żaden człowiek tego nie przejrzy dokument po dokumencie. Śledztwo prowadzone przez Międzynarodowego Konsorcjum Dziennikarzy Śledczych (ICIJ – The International Consortium of Investigative Journalists) bazowało na algorytmach analizy dużych zbiorów danych.

Na stronie https://panamapapers.icij.org/graphs/ jest kilka wizualizacji kluczowych zestawień z zebranych dokumentów. W jaki sposób analizowano dane o rozmaitych zależnościach pomiędzy rozmaitymi podmiotami na taką skalę?

Do analizy wykorzystano między innymi bazę danych neo4j dedykowaną analizie danych grafowych. Jak pracuje się z takimi bazami danych? Np. korzystając z języka cypher – deklaratywny jezyk inspirowany SQLem, ale zaprojektowany do pracy na grafach.

Na stronie http://neo4j.com/blog/analyzing-panama-papers-neo4j/ znajduje się ciekawa prezentacja jak budowano w tym języku zapytania do analizy danych z Kwitów z Panamy. Świetna lektura i wiele interesujących linków.