Comment les statistiques ont permis à la programmation de cliquer pour moi
Les écrivains et les programmeurs ont vécu une expérience similaire : regarder un écran vide, le curseur clignotant se moque de vous. J'ai trouvé un moyen de faire bouger ce curseur. Vous ne pensez peut-être pas que les statistiques seraient un bon facteur de motivation pour les idées de programmation, mais vous seriez surpris. Vous pourriez trouver vos propres moyens de faire circuler vos idées de programmation.
Sommaire
J'ai eu de l'expérience avec les statistiques
Une autre chose que l’écriture et la programmation ont en commun est qu’il est préférable d’écrire sur ce que l’on sait.
Mon dernier cours formel de mathématiques était un cours d'introduction aux statistiques et aux probabilités dans un collège communautaire. Même si c'était basique, sans aucun calcul ni algèbre linéaire, lorsque je me suis sérieusement intéressé à la fois à l'analyse statistique et à la programmation, j'avais déjà un domaine problématique dans lequel j'avais une certaine expérience.
Je savais que je ne construirais probablement pas le prochain grand éditeur ou noyau, mais il y avait de vrais problèmes sur lesquels je pouvais travailler. Même avec mon expérience limitée et étant un peu rouillé, j'ai pu me mettre rapidement au courant en prenant quelques livres de Schaum et en passant en revue les problèmes. Je cherchais un projet de programmation à long terme, mais je ne savais pas qu'il y en avait déjà un sous mon nez. Il semble que d’autres personnes aient eu la même idée, avec le mariage croissant de l’informatique et des statistiques, connu sous le nom de « science des données ».
Si vous recherchez de la motivation pour vos propres projets de programmation, vous devez considérer vos propres intérêts, votre travail et même vos passe-temps comme sources d'inspiration pour vos idées.
Données réelles à analyser disponibles en ligne
Tout comme les journalistes, les personnes travaillant avec des données ont besoin de bonnes sources.
Je connaissais les logiciels statistiques open source comme R, NumPy, pandas et autres depuis un certain temps, mais une pierre d'achoppement dans mon esprit était que je n'avais aucune idée de l'endroit où j'allais trouver des données.
Le livre de Schaum sur les statistiques contenait de petits ensembles de données que je pouvais saisir. Même si ceux-ci étaient utiles pour revoir les concepts statistiques dont je me souvenais à moitié de ma classe, je savais que ces programmes pouvaient gérer des sources de données beaucoup plus importantes. J'ai pu en trouver sur Kaggle ainsi que sur des sources gouvernementales américaines. Ce dernier comprend des données de la Réserve fédérale américaine, ainsi que l'ensemble de données sur les retards de vol du ministère des Transports.
Cela signifiait que je pouvais examiner des ensembles de données réels, et non des données sur les jouets, et en tirer de vraies conclusions. Vous pourriez faire la même chose avec vos propres données.
Je peux acquérir des connaissances pour ma carrière, et vous aussi
L’apprentissage de la programmation statistique présente de réels avantages pratiques.
Presque tous les emplois vous obligeront à utiliser une certaine forme de statistiques, qu'il s'agisse de statistiques descriptives de base ou d'analyses de régression sophistiquées. Comme l'a écrit Evan Miller, le contrôle statistique de la qualité a révolutionné le secteur manufacturier, et les statistiques ont également influencé le sport, en particulier l'adoption de la sabermétrie par le baseball, comme l'illustre le film. Boule d'argent. Cela transforme même mon domaine de prédilection initial, le journalisme, avec la croissance du journalisme de données. Regardez combien d’articles de presse utilisent des données et des graphiques pour aider les lecteurs à donner un sens aux sujets économiques et politiques. Apprendre un peu de Python ou de R pourrait vous aider, quel que soit le domaine dans lequel vous évoluez.
À un niveau plus personnel, mes recherches sur la programmation statistique m'ont donné des idées d'articles ici sur HTG, car j'ai rédigé ce que j'ai appris dans des articles précédents, comme l'analyse de données en Python.
Les vrais problèmes me permettent de m'en tenir plus facilement au codage
Étant donné que je travaille sur de vrais problèmes avec les statistiques, il m'est plus facile de m'y tenir en tant que projet à long terme.
Certains de mes projets passés essayaient de créer des utilitaires simples. J'aurais peut-être rêvé de créer des algorithmes sophistiqués en C pour faire fonctionner le noyau Linux sur un élément matériel aléatoire, mais c'étaient des objectifs plus abstraits.
Une chose que j'aime dans la programmation statistique en R ou Python, c'est le retour immédiat que je reçois. Une chose que la programmation statistique englobe est le développement interactif. Cela peut inclure une session Python interactive dans IPython, un Jupyter Notebook ou RStudio. Je n'ai même pas besoin d'écrire un programme ou un script au préalable. Si j'écrivais en C, je devrais exécuter le compilateur. Au lieu de cela, je peux taper des commandes et obtenir des résultats immédiatement. Cela semble être un changement de paradigme en soi.
Je trouve tout cela plus motivant que d’essayer de créer seul le code le plus « élégant ».
R et Python pourraient être meilleurs pour vos données qu'Excel
Il n'est pas difficile de comprendre pourquoi les feuilles de calcul ont fait leur apparition, même depuis l'introduction de VisiCalc en 1979. La feuille de calcul rendait non seulement les calculs plus faciles et plus rapides, mais vous pouviez également exécuter « Et si ? » scénarios. Si vous modifiiez la valeur d'une cellule, toutes les autres cellules qui en dépendaient seraient recalculées immédiatement.
Les feuilles de calcul sont toujours utiles, mais si vous travaillez beaucoup avec les chiffres, vous vous rendrez compte qu'elles ont des limites. Les feuilles de calcul comme Excel vous feront cliquer et faire glisser dans les colonnes. Si vous disposez de beaucoup de données, cela peut être fastidieux. Leurs fonctions intégrées sont également limitées et orientées vers les calculs professionnels.
Des langages comme Python et R résolvent ce problème. Vous pouvez facilement opérer sur de grands ensembles de données, et les deux langages prennent en charge les bibliothèques afin que vous puissiez facilement étendre leurs fonctionnalités. Python propose de nombreux packages via PyPI et R possède CRAN. Vous pouvez utiliser des bibliothèques pour ajouter facilement de nouvelles fonctionnalités. Vous pouvez être plus productif qu’en cliquant et en faisant glisser des feuilles de calcul. Excel est omniprésent dans le monde des affaires, mais ce n’est peut-être pas le meilleur outil pour ce travail. Je me demande combien d'erreurs catastrophiques dans Excel pourraient être évitées en utilisant Python ou R à la place.
Les feuilles de calcul sont toujours utiles pour saisir et formater des données. L’avantage de Python et R est que vous pouvez facilement importer les données, en tirant parti des atouts des feuilles de calcul et des bibliothèques sophistiquées d’analyse de données.
La morale : Besoin de motivation ? Codez ce que vous savez
De nombreux grands projets de programmation ont vu le jour parce que les gens avaient besoin d'automatiser un problème qu'ils connaissaient. Cela semble s'être appliqué dans mon cas. Il existe de nombreux ensembles de données à explorer et de nouveaux outils à découvrir. La programmation statistique m'occupera probablement pendant des années. Si vous voulez vraiment approfondir la programmation, il est utile d’avoir votre propre projet passionné.
