Perl scripts: verschil tussen versies

Uit wiki.openbomenkaart.org
Naar navigatie springen Naar zoeken springen
Label: Handmatige ongedaanmaking
Regel 1: Regel 1:
==csv2json.pl==
Perl script '''[https://openbomenkaart.org/scripts/perl/csv2json.pl csv2json.pl]''' voert een aantal bewerkingen uit op een bomenbestand.  
Perl script '''[https://openbomenkaart.org/scripts/perl/csv2json.pl csv2json.pl]''' voert een aantal bewerkingen uit op een bomenbestand.  


Regel 7: Regel 8:
'''Meer uitleg gewenst'''
'''Meer uitleg gewenst'''


 
==csv_match_revisions.pl==
Perl script '''[https://openbomenkaart.org/scripts/perl/csv_match_revisions.pl csv_match_revisions.pl]''' kan twee CSV bestanden met gemeentelijke data vergelijken en daaruit een aantal verschillenlijsten produceren. Er zijn verschillende bestandsformaten voor gemeentelijke bomenbestanden. Het eenvoudigste voor ons doel is een CSV (Comma Separated Values) of XLS(X) bestand (Excel spreadsheet). Een Excel bestand kan je heel eenvoudig exportereen naar een CSV bestand. Het script verwacht dat de invoerbestanden al (oplopend) zijn gesorteerd op het eerste veld Id (dit kan in Excel).
Perl script '''[https://openbomenkaart.org/scripts/perl/csv_match_revisions.pl csv_match_revisions.pl]''' kan twee CSV bestanden met gemeentelijke data vergelijken en daaruit een aantal verschillenlijsten produceren. Er zijn verschillende bestandsformaten voor gemeentelijke bomenbestanden. Het eenvoudigste voor ons doel is een CSV (Comma Separated Values) of XLS(X) bestand (Excel spreadsheet). Een Excel bestand kan je heel eenvoudig exportereen naar een CSV bestand. Het script verwacht dat de invoerbestanden al (oplopend) zijn gesorteerd op het eerste veld Id (dit kan in Excel).


(''Terzijde: de naam Comma Separated Values kan misleidend zijn. Excel hanteert verschillende scheidingstekens in verschillende landen. In de Nederlandse versie van Excel is het een punt-komma. Dit script verwacht echt komma's als scheidingstekens.'')
(''Terzijde: de naam Comma Separated Values kan misleidend zijn. Excel hanteert verschillende scheidingstekens in verschillende landen. In de Nederlandse versie van Excel is het een punt-komma. Dit script verwacht echt komma's als scheidingstekens.'')


===Taxonnamen===
Twee van de verschillenlijsten gaan over taxonnamen:  
Twee van de verschillenlijsten gaan over taxonnamen:  
*een tekst bestand '''[https://openbomenkaart.org/data/diffs/Leiden%20Matched%20Revisions%20Diff%20Species.txt Leiden Matched Revisions Diff Species.txt]''', bedoeld als leesbaar overzicht
*een tekst bestand '''[https://openbomenkaart.org/data/diffs/Leiden%20Matched%20Revisions%20Diff%20Species.txt Leiden Matched Revisions Diff Species.txt]''', bedoeld als leesbaar overzicht
Regel 20: Regel 22:
*<font color=#FF00FF>violet</font>: oude en nieuwe taxonnaam verschillen qua soort
*<font color=#FF00FF>violet</font>: oude en nieuwe taxonnaam verschillen qua soort
*<font color=#0000FF>blauw</font>: oude en nieuwe taxonnaam verschillen qua cultivar
*<font color=#0000FF>blauw</font>: oude en nieuwe taxonnaam verschillen qua cultivar
Het is dus mogelijk om eerst de belangrijkste verschillen na te lopen. Veel meer mensen zullen over een foutieve  geslachtsnaam vallen dan over een verschil in cultivar.
[[Bestand:taxonnaam verschillen.png|thumb|400px|left|Verschillen in taxonnamen tussen oud en nieuw gemeentebestand gemarkeerd, naar nivo van verschil: oude en nieuwe taxonnaam verschillen qua <font color=#FF0000>geslacht</font>, <font color=#FF00FF>soort</font> of <font color=#0000FF>cultivar (of ondersoort)</font>]]<br clear=all>

Versie van 22 apr 2022 08:33

csv2json.pl

Perl script csv2json.pl voert een aantal bewerkingen uit op een bomenbestand.

Het is een beetje Q&D (Quick and Dirty). Zo moet je eerst wat regels in het script aanpassen, wanneer je van invoerbestand wilt wisselen.

Zelfs de naam had beter gekund, want intussen produceert het niet alleen een json bestand, maar ook een csv bestand.

Meer uitleg gewenst

csv_match_revisions.pl

Perl script csv_match_revisions.pl kan twee CSV bestanden met gemeentelijke data vergelijken en daaruit een aantal verschillenlijsten produceren. Er zijn verschillende bestandsformaten voor gemeentelijke bomenbestanden. Het eenvoudigste voor ons doel is een CSV (Comma Separated Values) of XLS(X) bestand (Excel spreadsheet). Een Excel bestand kan je heel eenvoudig exportereen naar een CSV bestand. Het script verwacht dat de invoerbestanden al (oplopend) zijn gesorteerd op het eerste veld Id (dit kan in Excel).

(Terzijde: de naam Comma Separated Values kan misleidend zijn. Excel hanteert verschillende scheidingstekens in verschillende landen. In de Nederlandse versie van Excel is het een punt-komma. Dit script verwacht echt komma's als scheidingstekens.)

Taxonnamen

Twee van de verschillenlijsten gaan over taxonnamen:

  • een tekst bestand Leiden Matched Revisions Diff Species.txt, bedoeld als leesbaar overzicht
  • een csv bestand Leiden Matched Revisions Diff Taxon.csv, bedoeld om verder te verwerken metcsv2json.pl. Dat script voegt in het json bestand extra tags toe waarmee je verschillen tussen gemeentelijke soortnamen in oude en nieuw bestand op een kaart kan markeren tijdens nalopen kan registreren wat de juiste naam is (de oude, of de nieuwe, of toch weer iets anders). ALs je zo'n json bestand hebt met deze extra tags kun je die op de kaart zichtbaar maken door een extra parameter aan de url toe te voegen: checktaxon. Zie dit voorbeeld (beta versie) van de kaart van Leiden.

De kaart laat nu alle bomen als witte cirkels zien, behalve die waar de taxonnaam ter discussie staat, die cirkels zijn als volgt gekleurd

  • rood: oude en nieuwe taxonnaam verschillen qua geslacht
  • violet: oude en nieuwe taxonnaam verschillen qua soort
  • blauw: oude en nieuwe taxonnaam verschillen qua cultivar

Het is dus mogelijk om eerst de belangrijkste verschillen na te lopen. Veel meer mensen zullen over een foutieve geslachtsnaam vallen dan over een verschil in cultivar.

Verschillen in taxonnamen tussen oud en nieuw gemeentebestand gemarkeerd, naar nivo van verschil: oude en nieuwe taxonnaam verschillen qua geslacht, soort of cultivar (of ondersoort)