Corise — Python pour la science des données
Projet 1 — Airbnb
J'ai commencé à écrire du code en Python pour mon projet de la première semaine pour Corise. J'ai trouvé le langage incroyablement polyvalent et facile à apprendre tout en appliquant différentes fonctions Numpy. J'ai trouvé que l'utilisation de Numpy rationalisait mon code et créait un produit final plus concis qui me permettait de passer plus de temps sur les algorithmes. Nous avons travaillé sur l'espace de collaboration de Google pour notre projet. Cependant, j'ai trouvé que l'utilisation d'un ordinateur dans un espace partagé peut parfois être gênante. J'ai fini par passer tous mes paramètres de partage d'écran en privé, ce qui a bien fonctionné pour moi car je me concentrais davantage sur l'obtention du bon code plutôt que sur ce que faisaient les autres. Avant de commencer le projet, j'avais très peu d'expérience en programmation, j'étais donc très nerveux à l'idée de créer un programme simple utilisant Numpy.
Premiers pas avec Python et Numpy
Pour commencer avec Numpy, nous avons téléchargé un ensemble de données Airbnb à nettoyer. L'ensemble de données consistait en des informations sur l'emplacement des propriétés à louer qui ont été collectées par les utilisateurs d'Airbnb à Amsterdam. Lorsque j'ai téléchargé l'ensemble de données, je n'ai pas été surpris de voir qu'il s'agissait d'un fichier volumineux. Une fois l'ensemble de données téléchargé, il était temps de le nettoyer. Nous voulions nous débarrasser des en-têtes, pieds de page, ID en double et autres éléments inutiles qui rendaient le fichier difficile à lire.
- Supprimez la première colonne et la première ligne.
- Imprimez les quatre premières colonnes.
- Décalez la matrice de 90 degrés à l'aide de la commande 'matrix. fonction "transposition".
- Imprimez les 5 premières lignes.
- Supprimez la ligne et la colonne d'en-tête et imprimez les 3 dernières colonnes.
Nous avons ensuite ajouté une instruction 'print' pour afficher les résultats de chacune des étapes ci-dessus.
Conversion de devises en Numpy
Maintenant que nous avons nettoyé les données, nous voulions utiliser le code 'currency_converter' pour les convertir dans la devise de notre choix. Tout d'abord, j'ai importé la bibliothèque en utilisant 'from currency_converter import CurrencyConverter'. Une fois cette opération terminée, la devise que j'ai décidé d'utiliser était « GBP » et de convertir la devise de « USD » en « GBP ».
- Le code utilisé était le suivant :
- gbp_rate = cc.convert(1, 'USD', 'GBP')
- print(gbp_rate) …… suivi des instructions pour multiplier la colonne dollar par la devise utilisée (c'est-à-dire : GBP) afin de calculer le taux.)
- print(matrix[:, 1]) …… suivi de l'instruction d'imprimer la valeur des dollars dans la matrice.
- # Multipliez la colonne dollar par le pourcentage d'inflation (1,00 + inflation)
- matrice[:, 1] = matrice[:, 1] * 1,07
- print(matrix[:, 1]) …… suivi de l'instruction d'imprimer la valeur des dollars dans la matrice après qu'elle a été multipliée par le pourcentage d'inflation.
Cette section était assez simple et rapide. Nous avons créé une boucle afin de calculer la distance pour la latitude et la longitude à partir de notre ensemble de données téléchargé. Cette section était assez simple et rapide. Pour cette partie du projet, nous avons créé une fonction capable de parcourir chaque élément du vecteur longitude et latitude. La fonction créée s'appelait « distance » et prenait deux arguments : latitude et longitude. J'ai ensuite utilisé cette ligne de code afin de parcourir les valeurs de chaque colonne de l'ensemble de données.
Le code utilisé dans la fonction timeit est illustré ci-dessous :
# Autoriser l'utilisation d'une fonction Python de manière (semi-)vectorisée>> conv_to_meters = np.vectorize(from_location_to_airbnb_listing_in_meters)
# Appliquez la fonction, utilisez time>>>> conv_to_meters(latitude, longitude, matrix[:, 2], matrix[:, 3])
Créer une application dans Streamlit et la déployer sur GitHub
À l'aide de la plateforme Streamlit, nous avons créé une application pour notre portefeuille afin d'afficher le code ci-dessus représentant les données Airbnb. Ce faisant, nous avons pu créer un référentiel sur GitHub qui abritait les données brutes, l'application streamlit dans laquelle les données ont été affichées et la page Web qui héberge l'ensemble du portefeuille de codes. À partir de là, je peux rendre l'application publique afin que les utilisateurs puissent visiter ce qui a été créé. S'ils choisissent de contribuer, ils peuvent simplement bifurquer le projet sur leur propre compte GitHub et à partir de là, appliquer les modifications et les mises à jour qu'ils ont apportées au référentiel ou faire les ajustements qu'ils souhaitent tant qu'ils maintiennent leur compte d'origine lié au référentiel d'origine. .
Conclusion
Dans l'ensemble, ce projet m'a appris les bases de Numpy tout en affichant les possibilités infinies en matière de manipulation et d'analyse de données à l'aide de ce programme et d'autres logiciels d'analyse de données tels que R. Je crois que savoir manipuler et visualiser les données telles qu'elles sont, est essentiel au succès dans n'importe quel domaine scientifique. Je pense également que la capacité de manipuler les données de sources aussi variées permet de mieux comprendre le fonctionnement du monde. Cette semaine, nous commençons notre voyage dans les Pandas, ce qui me passionne également beaucoup. Je pense que ces outils nous aideront à structurer nos données de manière à en extraire des informations utiles.
N'hésitez pas à me suivre sur Medium , Twitter , LinkedIn et Github . Je publierai plus de matériel au cours de mon parcours de données ici et sur mes autres comptes sociaux.
![Qu'est-ce qu'une liste liée, de toute façon? [Partie 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































