Skip to content

Czyszczenie danych za pomocą narzędzi Google Refine i Data Wrangler

Notifications You must be signed in to change notification settings

Alakair/data-refine

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Data Wranglers

Data Wranglers

W kwietniu zajmujemy się aggregacją danych. Należy zaimplementować 3–5 aggregacji. Opisy agregacji należy dopisać do swoich plików.

Do aggregacji można wykorzystać kolekcje:

  • census1881
  • zipcodes, przykładowe agregacje
  • kody_pocztowe (D. Sawa)
  • imieniny, przykładowe agregacje
  • ceny (Ł. Wasak)
  • car_market (M. Stanik)
  • poland – Open Street Data dla Polski
  • ukgov (P. Jażdżewski)
  • airports (B. Bedra)

Te kolekcje zostały zaimportowane do bazy MongoDB działającej na mojej maszynie wirtualnej na UG.

Do bazy logujemy się w ten sposób:

mongo --username student --password sesja2013 153.19.1.202/test

Na rozgrzewkę powinniśmy wykonać kilka poleceń, przykładowo:

db.census1881.count()     // 4_277_807 rekordów
db.zipcodes.count()       //    29_467
db.kody_pocztowe.count()  //   140_076
db.imieniny.count()       //       364

db.census1881.findOne()
// {
//   "_id": ObjectId("51630b8b31f30759f2f32061"),
//   "last": "richard",
//   "first": "joseph",
//   "age": 40,
//   "religion": "catholic"
// }

Uwaga: Użytkownik student ma uprawnienia tylko do odczytu w bazie test.

Nasze dane

  1. Włodzimierz Bzyl, Imieniny, Open Street Map Data dla Polski, GeoBytes – państwa i miasta.
  2. Michał Mroczkowski, Kody pocztowe sejmometr.
  3. Marcin Głombiowski, Kody pocztowe sejmometr.
  4. Pawel Kaminski, Sacramento crimes.
  5. Marcin Gigołło, Kody pocztowe.
  6. Daniel Szymczak, Wskaźniki wydajności.
  7. Alicja Kopczyńska, Lista bazylik na świecie.
  8. Michał Frankowski, Natura 2000.
  9. Dorian Sawa, Kody pocztowe.
  10. Jakub Ciechowski Najbardziej pracowici.
  11. Patryk Jażdżewski, Wydatki Home Office w 2010.
  12. Paweł Śląski, Dane historyczne notowań WIG20.
  13. Aneta Budner, Adresy IP.
  14. Ryszard Madejski, Powierzchnia lasów i użytków rolnych.
  15. Adam Radomski, Kody pocztowe.
  16. Jan Mudry, Lista UNESCO w Europie Wschodniej.
  17. Andrzej Thiel, Spis ludności.
  18. Bartłomiej Bedra, Lista lotnisk na świecie.
  19. Jakub Martin, Lista lotów programu Apollo.
  20. Urszula Sawicka, Produkty dostawców korzystających z Vend.
  21. Maciej Stanik, Rynek nowych samochodów osobowych w USA w 2000 roku.
  22. Łukasz Wasak, Ceny Towarów w Polsce.
  23. Damian Wieliczko, Budownictwo mieszkaniowe.
  24. Jan Pawlukiewicz, Pomniki przyrody w Raciborzu.
  25. Damian Szafranek, Przeciętne miesięczne wynagrodzenia brutto.
  26. Adrian Szulc, Ilość pomieszczeń szkolnych w szkołach podstawowych.
  27. Daniel Landowski, Kody pocztowe wg powiatów dla województwa pomorskiego.
  28. Dawid Wiśniewski, Statystyki meczowe angielskiej Premier League sezonu 05/06.
  29. Adam Grabowski, Statystyki NBA 2012/2013.
  30. Przemysław Jakuła, GeoNames - country, state, region, city, village, road, railroad.
  31. Adam Dąbrowski, [Czołgi II wojny światowej] (/docs/ww2tanks.md).
  32. Mateusz Skorb, [Monety okolicznościowe 2 złote] (/docs/mskorb.md).
  33. Michał Chołka, [Bezrobotni] (docs/mcholka.md).
  34. Wojciech Szymański, [Wypadki drogowe] (docs/wszymanski.md).
  35. Adam Szuliński, [Agregacje] (docs/aszulinski.md).
  36. Maciej Młynarski, [Zawodnicy UFC] (docs/mmlynarski.md).
  37. Łukasz Kępiński, [Transfery zawodników] (docs/lkepinsk.md).

Ściąga z Gita

Dwa sposoby radzenia sobie z taką sytuacją: This pull request can be automatically merged.

Sposób 1:

git remote add pjz90 git://github.com/pjz90/data-refine.git
git fetch pjz90
git merge pjz90/master
  .. edycja .. rozwiązywanie konfliktów
git remote rm pjz90

Sposób 2 (sugerowany przez GitHub Team):

git checkout -b bbedra-master master
git pull git://github.com/bbedra/data-refine.git master
git checkout master
git merge bbedra-master
git push origin master
git branch -d bedra-master

Undo różnych rzeczy:

git reset --merge           # merge
git reset --hard ORIG_HEAD  # rebase

Another common practice is to rebase the last few commits in your current branch

Interactive rebase on GitHub

Jak zmniejszyć liczbę commitów, zmienić ich kolejność i przeredagować wpisy log:

git checkout issue16                       # o ile commity są na tej gałęzi
git log --pretty=oneline HEAD~6..HEAD      # sprawdzamy które commity będziemy zmieniać
git rebase -i HEAD~6                       # poprawiamy ostatnich 6 commitów

.. edycja ..
....  edit -- jeśli chcemy poprawić ten commit lub coś do niego dodać
........  git reset HEAD^  # rollback the last commit
........  git status
........  git add --patch  # lub dodajemy/edytujemy pliki
........
........  git rebase --contiune
....  reword -- poprawiamy tekst wpisu do log

git log --pretty=oneline
git rebase master                          # o ile jesteśmy na gałęzi issue16
git checkout master
git merge issue16
git branch -d issue16                      # możemy usunąć scaloną gałąź

Na stronie manuala gitrevisions jest opisane znaczenie: HEAD^, ^HEAD, HEAD~n.

Stashing:

git stash
git stash list
git stash apply stash@{0}  # przykłady
git stash drop  stash@{0}

Zobacz też:

About

Czyszczenie danych za pomocą narzędzi Google Refine i Data Wrangler

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published