Cursus
De makers van Homebrew noemen het de “ontbrekende package manager voor macOS”. Packages zijn verzamelingen bestanden die samen gebundeld zijn en als groep kunnen worden geïnstalleerd en verwijderd. Een package manager is een tool die het installeren, updaten en verwijderen van packages automatiseert.
Als je een Python-gebruiker bent, heb je mogelijk de package manager pip of de packagebeheerfunctionaliteit van conda gebruikt om packages te installeren, updaten of verwijderen.
Als je een R-gebruiker bent, heb je mogelijk de RStudio Package Manager gebruikt om packages te installeren, updaten of verwijderen.
Homebrew is een package manager voor de Mac die handig is om te installeren. Je zult merken dat je Homebrew voor data science kunt inzetten, omdat het het veel makkelijker maakt om extra technologieën op Mac te installeren, zoals Apache Spark en de software Graphviz.
Laten we aan de slag gaan.
Command Line Tools installeren
Om Homebrew te installeren, moet je ofwel de Xcode Command Line Tools (ongeveer 100 MB) of het volledige Xcode-pakket (ongeveer 10 GB) installeren. In deze tutorial installeer je Command Line Tools, omdat die een redelijker formaat hebben. Command Line Tools geeft Mac-gebruikers veelgebruikte tools, hulpprogramma’s en compilers. Een voordeel hiervan is dat bij het installeren van Command Line Tools ook Git wordt geïnstalleerd, wat je nodig hebt omdat Homebrew onder de motorkap in feite uit Git- en Ruby-scripts bestaat.
1. Open een nieuwe terminal. Dit kan door op het Spotlight-vergrootglas rechtsboven op het scherm te klikken, terminal te typen en vervolgens op het Terminal-pictogram te klikken. Je kunt controleren of Command Line Tools of Xcode is geïnstalleerd door de onderstaande opdracht in je terminal te typen.
xcode-select -p

Als je een pad als output ziet, zoals in de afbeelding hierboven, ga dan door naar de sectie "Install Homebrew" van de tutorial. Je hebt Xcode of Xcode Command Line Tools al geïnstalleerd.
Als je geen output ziet, ga door naar stap 3.
2. Typ het volgende in je terminal om Command Line Tools te installeren. Als je een prompt ziet zoals in de afbeelding hieronder, klik dan op Install.
xcode-select --install

Als er een Licentieovereenkomst verschijnt, lees die dan en klik op Agree.
3. Controleer opnieuw of Xcode Command Line Tools is geïnstalleerd. Dit kun je doen door een nieuwe terminal te openen en de onderstaande opdracht te typen.
xcode-select -p

Homebrew installeren
Open een terminal en typ de onderstaande opdracht. Je wordt gevraagd je wachtwoord in te voeren, meestal hetzelfde als waarmee je je Mac ontgrendelt wanneer je hem opstart. Na het invoeren van je wachtwoord start de installatie.
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Homebrew-opdrachten
Laten we nu kijken naar veelvoorkomende Homebrew-opdrachten.
Package installeren
De onderstaande opdracht installeert de package wget. Je kunt wget vervangen door de package die je wilt installeren.
brew install wget
Package verwijderen
De onderstaande opdracht verwijdert de package wget. Je kunt wget vervangen door de package die je wilt verwijderen.
brew rm wget
Lijst met packages die je kunt installeren
brew search geeft alle mogelijke packages weer die je kunt installeren. De afbeelding hieronder toont de output van brew search.

Een praktischer gebruik van de opdracht brew search is een specifiekere zoekopdracht. Als je bijvoorbeeld Apache Spark wilt installeren, kun je de onderstaande opdracht gebruiken om te zien of er een Apache Spark-package beschikbaar is.
brew search spark

Uit de afbeelding hierboven blijkt dat er een mogelijke Apache Spark-package is genaamd apache-spark die handig kan zijn om te installeren. Het kan nuttig zijn om meer informatie over apache-spark op te vragen; daarvoor is de opdracht brew info handig.
Informatie over een package opvragen
De opdracht brew info is erg handig om meer informatie over een package te krijgen en om de vereisten van een package te zien.
De onderstaande opdracht geeft meer informatie over de package apache-spark.
brew info apache-spark

Merk op dat hier staat dat deze package Java-versie 1.8 vereist en dat er een paar links worden gegeven naar plaatsen waar je meer informatie over de specifieke package kunt vinden. De volgende sectie gaat dieper in op het installeren van Apache Spark.
Integratie met andere technologieën
Je zult vaak merken dat Homebrew kan helpen bij het werken met andere technologieën. Deze sectie bevat twee voorbeelden van hoe je Homebrew kunt gebruiken voor data science:
- Apache Spark installeren met Homebrew
- Homebrew gebruiken om beslissingsbomen te visualiseren.
Apache Spark installeren met Homebrew
Homebrew kan worden gebruikt om andere technologieën zoals Apache Spark te installeren. Apache Spark is niet de makkelijkste om te installeren, maar met Homebrew gaat het een stuk eenvoudiger. De onderstaande stappen laten zien hoe je Apache Spark met Homebrew installeert.
1. Controleer of er een Apache Spark-package op Homebrew staat met de onderstaande opdracht.
brew search spark

2. Zoek meer informatie over apache-spark om te zien of je alle benodigde dependencies hebt.
brew info apache-spark
Als uit de output blijkt dat je Java hebt, ga dan verder met stap 3.

Als uit de output blijkt dat je niet aan de vereisten voldoet, moet je Java installeren voordat je doorgaat met stap 3.

Je kunt de onderstaande opdracht typen om te zien of je Java hebt. De afbeelding hieronder toont de output als je geen Java hebt geïnstalleerd. Belangrijk: als je een oudere versie van Java hebt, moet je upgraden.
java -version

Je kunt Java installeren met Cask. Cask is een uitbreiding op brew waarmee je grafische applicaties kunt beheren via het Cask-project.
brew tap caskroom/versions
brew cask install java8
Controleer na installatie of je een geschikte versie van Java hebt.
java -version

3. Gebruik de onderstaande opdracht om apache-spark te installeren.
brew install apache-spark

4. Je kunt nu PySpark openen met de onderstaande opdracht.
pyspark

5. Je kunt pyspark afsluiten met exit().
Wil je meer leren over PySpark? Bekijk dan de Apache Spark-tutorial: ML met PySpark.
Homebrew gebruiken om beslissingsbomen te visualiseren
Graphviz is open-sourcesoftware voor graafvisualisatie. Graafvisualisatie is een manier om structurele informatie weer te geven als diagrammen van abstracte grafen en netwerken. In data science wordt Graphviz onder andere gebruikt om beslissingsbomen te visualiseren (je kunt hier meer over beslissingsbomen leren hier).
Je kunt GraphViz installeren met de onderstaande opdracht.
brew install graphviz
De onderstaande Python-code traint een beslissingsboom op de bekende Iris-dataset en exporteert een dot-bestand (decisionTree.dot) van de getrainde boom.
from sklearn.datasets import load_iris
from sklearn import tree
iris = load_iris()
clf = tree.DecisionTreeClassifier(max_depth=3)
clf = clf.fit(iris.data, iris.target)
tree.export_graphviz(clf,
out_file="decisionTree.dot",
feature_names=iris.feature_names,
class_names=iris.target_names,
filled = True)
Een van de sterke punten van beslissingsbomen is dat ze eenvoudig te interpreteren zijn. Je kunt een beslissingsboom makkelijker interpreteren door hem te bekijken. Daarvoor gebruik je Graphviz. In een terminal kun je de onderstaande opdracht typen om decisionTree.dot om te zetten naar een gemakkelijk te bekijken .png-bestand.
dot -Tpng decisionTree.dot -o decisionTree.png
Je kunt vervolgens het gemaakte .png-bestand openen om je beslissingsboom te bekijken.

Belangrijk om te weten: soms overlappen functionaliteiten van package managers. Zo kun je Graphviz ook installeren via de packagebeheerfunctionaliteit van conda als je Anaconda hebt geïnstalleerd, met de onderstaande opdracht.
conda install python-graphviz
Conclusie
Deze tutorial biedt een korte handleiding over het installeren en gebruiken van Homebrew voor data science. Hopelijk vind je deze tutorial handig wanneer je Apache Spark of Graphviz wilt installeren. Homebrew heeft een geweldige website waar je meer opdrachten kunt vinden. Als je vragen of opmerkingen over de tutorial hebt, laat het dan weten in de reacties hieronder of via Twitter.
Veelgestelde vragen
Wat is Homebrew en waarom is het nuttig voor data science op macOS?
Homebrew is een package manager voor macOS die het installeren, updaten en verwijderen van softwarepakketten vereenvoudigt. Het is vooral handig voor data scientists, omdat je er eenvoudig tools zoals Apache Spark en Graphviz op Mac mee kunt beheren.
Hoe kan ik Homebrew gebruiken om Apache Spark te installeren?
Zoek eerst naar de Apache Spark-package met brew search spark en controleer of alle dependencies, zoals Java, aanwezig zijn met brew info apache-spark. Installeer vervolgens Apache Spark met brew install apache-spark.
Hoe kan ik Homebrew gebruiken om beslissingsbomen te visualiseren in data science?
Je kunt Graphviz, een tool voor graafvisualisatie, installeren met brew install graphviz. Na installatie kun je visuele weergaven genereren van in Python gemaakte beslissingsbomen door ze om te zetten naar .png-bestanden met de opdracht dot -Tpng decisionTree.dot -o decisionTree.png.
