This document summarizes a presentation on modeling risk prevention in cities prone to natural hazards. It introduces the motivation and questions addressed, describes the results of the spatial model including how cities develop over time and the impact of insurance policies. It concludes that actuarially fair insurance leads to optimal development while subsidized insurance can result in overdevelopment of risky areas and underinvestment in resilience.
The document discusses using collaborative genealogy data from the website Geneanet to study historical demography. It describes cleaning and preparing the raw data, which includes over 100,000 individuals born between 1800-1804 in Maine-et-Loire, France and their descendants. The data preparation includes merging duplicate individual records and accounting for variations in names. Preliminary results are planned but not yet shown. The collaborative genealogy data presents opportunities for historical demographic research but also challenges around data quality and representation.
The document discusses the role of insurance companies in a risky economy. It argues that with insurance companies, Pareto optimality can be achieved with fewer security markets (T instead of Z) and by only making public aggregate endowment information rather than individual endowment information. Insurance companies allow agents to eliminate individual endowment risk through insurance contracts and participate in aggregate risk through security and stock markets in insurance companies. This reduces the complexity and information requirements compared to a model without insurance companies.
This document summarizes a presentation on pooling natural catastrophe risks in a community. It introduces the motivation, framework, and key results of a model analyzing insurance contracts when agents face correlated risks and insurers face costly capital constraints. The model finds that agents purchase full insurance coverage but insurers may default in catastrophic events, and agents invest in insurer stock if transaction costs are low enough. Comparative analyses show default is lower when catastrophes are more probable or reinsurance is more expensive, if agents invest in stock.
This document discusses quantile and expectile regressions. It begins by explaining the differences between the econometrics and machine learning approaches. It then introduces quantile and expectile regressions as generalizations of ordinary least squares regression that minimize different loss functions. Finally, it discusses properties of quantile and expectile regressions such as their elicitable measures and how they can be estimated.
RMLL 2013: Projet rudder, retour sur 4 ans de ScalaRUDDER
Un retour d'expérience sur l'utilisation de Scala dans un projet Open Source, sur 4 ans. Cette présentation couvre en particulier les aspects sociaux liés à l'utilisation d'un langage preque inconnu au début du projet (2009), et qui décolle.
This document summarizes a presentation on modeling risk prevention in cities prone to natural hazards. It introduces the motivation and questions addressed, describes the results of the spatial model including how cities develop over time and the impact of insurance policies. It concludes that actuarially fair insurance leads to optimal development while subsidized insurance can result in overdevelopment of risky areas and underinvestment in resilience.
The document discusses using collaborative genealogy data from the website Geneanet to study historical demography. It describes cleaning and preparing the raw data, which includes over 100,000 individuals born between 1800-1804 in Maine-et-Loire, France and their descendants. The data preparation includes merging duplicate individual records and accounting for variations in names. Preliminary results are planned but not yet shown. The collaborative genealogy data presents opportunities for historical demographic research but also challenges around data quality and representation.
The document discusses the role of insurance companies in a risky economy. It argues that with insurance companies, Pareto optimality can be achieved with fewer security markets (T instead of Z) and by only making public aggregate endowment information rather than individual endowment information. Insurance companies allow agents to eliminate individual endowment risk through insurance contracts and participate in aggregate risk through security and stock markets in insurance companies. This reduces the complexity and information requirements compared to a model without insurance companies.
This document summarizes a presentation on pooling natural catastrophe risks in a community. It introduces the motivation, framework, and key results of a model analyzing insurance contracts when agents face correlated risks and insurers face costly capital constraints. The model finds that agents purchase full insurance coverage but insurers may default in catastrophic events, and agents invest in insurer stock if transaction costs are low enough. Comparative analyses show default is lower when catastrophes are more probable or reinsurance is more expensive, if agents invest in stock.
This document discusses quantile and expectile regressions. It begins by explaining the differences between the econometrics and machine learning approaches. It then introduces quantile and expectile regressions as generalizations of ordinary least squares regression that minimize different loss functions. Finally, it discusses properties of quantile and expectile regressions such as their elicitable measures and how they can be estimated.
RMLL 2013: Projet rudder, retour sur 4 ans de ScalaRUDDER
Un retour d'expérience sur l'utilisation de Scala dans un projet Open Source, sur 4 ans. Cette présentation couvre en particulier les aspects sociaux liés à l'utilisation d'un langage preque inconnu au début du projet (2009), et qui décolle.
Chapitre 3 - Généralités sur le langage C.pdfShiniGami0o0
In mathematics and computer science, an algorithm is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing calculations and data processing.
Scala.io 2013 - M’enfin Scalac, où glandes-tu encore ?RUDDER
Scala est un super langage. Vraiment, son système de types extrêmement expressif permet de prouver tout un tas de propriétés sur notre cher code. D’ailleurs, on sent bien que le compilateur Scalac travaille pour nous. Qu’il travaille encore et encore… Certains vont jusqu’à dire que le réchauffement climatique s’est emballé depuis que Scala a commencé à rencontrer le succès. Bref, parfois nous aimerions que Scalac aille un peu plus vite. Ou au moins savoir où Scalac passe son temps, et si le dernier gâteau ajouté à notre architecture est responsable des 17 minutes de build de notre projet de 100 lignes. Cette présentation essaiera de faire un bilan des pratiques qui peuvent améliorer ou au contraire dégrader le temps de compilations, en partant des généralités (le CPU, par exemple - si si) et en allant jusqu’à la pose de sondes Aspectj afin de savoir quels sont les fichiers qui sont les plus gourmands en temps de compilation.
"D'une programmation objet classique au free monad."
Cette présentation explique le cheminement suivi par le code #Scala au sein de @RudderProject, en partant d'un erzatz de Java vers plus de programmation fonctionnelle et de Développement Dirigé par les Types.
Ogury est la plateforme de data mobile qui permet d’accéder aux données comportementales des profils de plus de 400 millions de mobinautes répartis dans plus de 120 pays.
Une plateforme micro-services c’est cool et c’est à la mode … mais il y a aussi le revers de la médaille ! L’augmentation du traffic inter-services peut dégrader vos temps de réponses car les connexions HTTP sont lentes.
Cependant des solutions existent pour optimiser le trafic réseau, durant cette session, David et Carles vous parleront de la solution qu’ils ont expérimentée : gRPC.
David Caramelo, Développeur Craftsman passionné depuis 12 ans, actuellement Tech Lead full stack chez Ogury. David s'est forgé son expérience essentiellement dans des startups parisiennes comme Viadeo ou Ogury et dans des cabinets conseil IT comme Xebia.
Carles Sistaré, Architecte-Développeur dans les clouds, actuellement Tech Lead de la team Delivery et co-fondateur d’Ogury. Carles a évolué dans le monde de la AdTech en passant par Ad4Screen et en tant qu’amateur de l’open-source en tant que commiteur Node-Kafka et créateur du module grpc-promise.
Ingénierie de la performance au sein des mégadonnéesDaniel Lemire
Les index logiciels accélèrent les applications en intelligence d'affaire, en apprentissage machine et en science des données. Ils déterminent souvent la performance des applications portant sur les mégadonnées. Les index efficaces améliorent non seulement la latence et le débit, mais aussi la consommation d'énergie. Plusieurs index font une utilisation parcimonieuse de la mémoire vive afin que les données critiques demeurent près du processeur. Il est aussi souhaitable de travailler directement sur les données compressées afin d'éviter une étape de décodage supplémentaire.
(1) Nous nous intéressons aux index bitmap. Nous les trouvons dans une vaste gamme de systèmes :
Oracle, Hive, Spark, Druid, Kylin, Lucene, Elastic, Git... Ils sont une composante de systèmes, tels que Wikipedia ou GitHub, dont dépendent des millions d'utilisateurs à tous les jours. Nous
présenterons certains progrès récents ayant trait à l'optimisation des index bitmap, tels qu'ils sont utilisés au sein des systèmes actuels. Nous montrons par des exemples comment multiplier la
performance de ces index dans certains cas sur les processeurs bénéficiant d'instructions SIMD (instruction unique, données multiples) avancées.
(2) Nous ciblons aussi les listes d'entiers que l'on trouve au sein des arbres B+, dans les indexes inversés et les index bitmap compressés. Nous donnons un exemple récent de technique de compression (Stream VByte) d’entiers qui permet de décoder des milliards d’entiers compressés par seconde.
Introduction à Ruby on Rails donnée durant la réunion mensuelle de décembre 2011 du ElsassJUG (Java User Group alsacien). C'était leur cadeau de noël en somme.
Back to basics - Ne perdez plus votre Temps avec les Dates - GDG Tours EditionCamblor Frédéric
La gestion du Temps sur une application client/serveur peut sembler simple de prime abord, mais se révélera beaucoup plus complexe au fur et à mesure des usages : timezones multiples, heures récurrentes, heure d'été/d'hiver, traitements cron, leap seconds sont des exemples parmi tant d'autres.
Saviez-vous même que la Commission Européenne envisage d'abolir le passage en heure d'hiver ? Quels impacts cela aurait sur nos applications ?
Mon objectif : qu'à partir de lundi prochain, vous vous posiez les bonnes questions à chaque fois que vous travaillerez sur une date ou une heure dans vos applications.
Pour cela, reprenons les bases du Temps en informatique : composantes d'une date, norme ISO 8601, Timezones et IANA.
Une fois ces bases posées, nous verrons, au travers d'un certain nombre de cas d'utilisation issus de la vraie vie, les bonnes questions qu'il convient de se poser pour mettre le doigt sur les complexités d'implémentation et éviter de tomber dans une faille spatio-temporelle lors du prochain changement d'heure.
Ce talk est accessible à tous et ne se focalisera pas sur un langage / une API en particulier : les concepts prévaudront sur le code.
"De nos jours, faire du développement web nécessite de connaître une quantité incroyable de technologies, frameworks et librairies.
Nous vous proposons de faire un tour d’horizon du web d’aujourd’hui. Nous parlerons backend, frontend et nous évoquerons aussi le futur.
Si vous voulez savoir où en est le web sans des heures de recherche, vous êtes au bon endroit ! "
This document discusses how family history can impact life insurance premiums. It reviews existing literature on relationships between family members' lifespans, such as husbands and wives or parents and children. Genealogical data is used to analyze dependencies between generations, like grandchildren and grandparents. Quantities important for life insurance are calculated based on family information, showing how premiums may differ depending on how many family members are still alive. The goal is to better understand how family history can influence longevity and mortality risk factors used in life insurance underwriting.
Family History and Life Insurance (UConn actuarial seminar)Arthur Charpentier
This document discusses how family history can impact life insurance premiums. It reviews existing literature on relationships between family members' lifespans. The document analyzes a genealogical dataset to study dependencies between husbands and wives, parents and children, and grandparents and grandchildren. It finds modest but robust correlations between related individuals' lifespans. This dependency is quantified for various life insurance metrics like annuities and whole life insurance, showing family history can impact premiums.
Talk at the modcov19 CNRS workshop, en France, to present our article COVID-19 pandemic control: balancing detection policy and lockdown intervention under ICU sustainability
The document discusses research on the relationship between family history and life insurance. It summarizes existing literature showing modest but robust connections between the lifespans of family members like spouses, parents and children, and grandparents and grandchildren. The document then presents analyses using a genealogical dataset, finding correlations between related individuals' lifespans. It explores how these family dependencies could impact life insurance premiums and quantities like annuities, widow's pensions, and life expectancies.
This document discusses the use of machine learning techniques in actuarial science and insurance. It begins with an overview of predictive modeling applications in insurance such as fraud detection, premium computation, and claims reserving. It then covers traditional econometric techniques like Poisson and gamma regression models and how machine learning is emerging as an alternative. The document emphasizes evaluating model goodness of fit and uncertainty, and addresses issues like price discrimination and fairness.
Chapitre 3 - Généralités sur le langage C.pdfShiniGami0o0
In mathematics and computer science, an algorithm is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing calculations and data processing.
Scala.io 2013 - M’enfin Scalac, où glandes-tu encore ?RUDDER
Scala est un super langage. Vraiment, son système de types extrêmement expressif permet de prouver tout un tas de propriétés sur notre cher code. D’ailleurs, on sent bien que le compilateur Scalac travaille pour nous. Qu’il travaille encore et encore… Certains vont jusqu’à dire que le réchauffement climatique s’est emballé depuis que Scala a commencé à rencontrer le succès. Bref, parfois nous aimerions que Scalac aille un peu plus vite. Ou au moins savoir où Scalac passe son temps, et si le dernier gâteau ajouté à notre architecture est responsable des 17 minutes de build de notre projet de 100 lignes. Cette présentation essaiera de faire un bilan des pratiques qui peuvent améliorer ou au contraire dégrader le temps de compilations, en partant des généralités (le CPU, par exemple - si si) et en allant jusqu’à la pose de sondes Aspectj afin de savoir quels sont les fichiers qui sont les plus gourmands en temps de compilation.
"D'une programmation objet classique au free monad."
Cette présentation explique le cheminement suivi par le code #Scala au sein de @RudderProject, en partant d'un erzatz de Java vers plus de programmation fonctionnelle et de Développement Dirigé par les Types.
Ogury est la plateforme de data mobile qui permet d’accéder aux données comportementales des profils de plus de 400 millions de mobinautes répartis dans plus de 120 pays.
Une plateforme micro-services c’est cool et c’est à la mode … mais il y a aussi le revers de la médaille ! L’augmentation du traffic inter-services peut dégrader vos temps de réponses car les connexions HTTP sont lentes.
Cependant des solutions existent pour optimiser le trafic réseau, durant cette session, David et Carles vous parleront de la solution qu’ils ont expérimentée : gRPC.
David Caramelo, Développeur Craftsman passionné depuis 12 ans, actuellement Tech Lead full stack chez Ogury. David s'est forgé son expérience essentiellement dans des startups parisiennes comme Viadeo ou Ogury et dans des cabinets conseil IT comme Xebia.
Carles Sistaré, Architecte-Développeur dans les clouds, actuellement Tech Lead de la team Delivery et co-fondateur d’Ogury. Carles a évolué dans le monde de la AdTech en passant par Ad4Screen et en tant qu’amateur de l’open-source en tant que commiteur Node-Kafka et créateur du module grpc-promise.
Ingénierie de la performance au sein des mégadonnéesDaniel Lemire
Les index logiciels accélèrent les applications en intelligence d'affaire, en apprentissage machine et en science des données. Ils déterminent souvent la performance des applications portant sur les mégadonnées. Les index efficaces améliorent non seulement la latence et le débit, mais aussi la consommation d'énergie. Plusieurs index font une utilisation parcimonieuse de la mémoire vive afin que les données critiques demeurent près du processeur. Il est aussi souhaitable de travailler directement sur les données compressées afin d'éviter une étape de décodage supplémentaire.
(1) Nous nous intéressons aux index bitmap. Nous les trouvons dans une vaste gamme de systèmes :
Oracle, Hive, Spark, Druid, Kylin, Lucene, Elastic, Git... Ils sont une composante de systèmes, tels que Wikipedia ou GitHub, dont dépendent des millions d'utilisateurs à tous les jours. Nous
présenterons certains progrès récents ayant trait à l'optimisation des index bitmap, tels qu'ils sont utilisés au sein des systèmes actuels. Nous montrons par des exemples comment multiplier la
performance de ces index dans certains cas sur les processeurs bénéficiant d'instructions SIMD (instruction unique, données multiples) avancées.
(2) Nous ciblons aussi les listes d'entiers que l'on trouve au sein des arbres B+, dans les indexes inversés et les index bitmap compressés. Nous donnons un exemple récent de technique de compression (Stream VByte) d’entiers qui permet de décoder des milliards d’entiers compressés par seconde.
Introduction à Ruby on Rails donnée durant la réunion mensuelle de décembre 2011 du ElsassJUG (Java User Group alsacien). C'était leur cadeau de noël en somme.
Back to basics - Ne perdez plus votre Temps avec les Dates - GDG Tours EditionCamblor Frédéric
La gestion du Temps sur une application client/serveur peut sembler simple de prime abord, mais se révélera beaucoup plus complexe au fur et à mesure des usages : timezones multiples, heures récurrentes, heure d'été/d'hiver, traitements cron, leap seconds sont des exemples parmi tant d'autres.
Saviez-vous même que la Commission Européenne envisage d'abolir le passage en heure d'hiver ? Quels impacts cela aurait sur nos applications ?
Mon objectif : qu'à partir de lundi prochain, vous vous posiez les bonnes questions à chaque fois que vous travaillerez sur une date ou une heure dans vos applications.
Pour cela, reprenons les bases du Temps en informatique : composantes d'une date, norme ISO 8601, Timezones et IANA.
Une fois ces bases posées, nous verrons, au travers d'un certain nombre de cas d'utilisation issus de la vraie vie, les bonnes questions qu'il convient de se poser pour mettre le doigt sur les complexités d'implémentation et éviter de tomber dans une faille spatio-temporelle lors du prochain changement d'heure.
Ce talk est accessible à tous et ne se focalisera pas sur un langage / une API en particulier : les concepts prévaudront sur le code.
"De nos jours, faire du développement web nécessite de connaître une quantité incroyable de technologies, frameworks et librairies.
Nous vous proposons de faire un tour d’horizon du web d’aujourd’hui. Nous parlerons backend, frontend et nous évoquerons aussi le futur.
Si vous voulez savoir où en est le web sans des heures de recherche, vous êtes au bon endroit ! "
This document discusses how family history can impact life insurance premiums. It reviews existing literature on relationships between family members' lifespans, such as husbands and wives or parents and children. Genealogical data is used to analyze dependencies between generations, like grandchildren and grandparents. Quantities important for life insurance are calculated based on family information, showing how premiums may differ depending on how many family members are still alive. The goal is to better understand how family history can influence longevity and mortality risk factors used in life insurance underwriting.
Family History and Life Insurance (UConn actuarial seminar)Arthur Charpentier
This document discusses how family history can impact life insurance premiums. It reviews existing literature on relationships between family members' lifespans. The document analyzes a genealogical dataset to study dependencies between husbands and wives, parents and children, and grandparents and grandchildren. It finds modest but robust correlations between related individuals' lifespans. This dependency is quantified for various life insurance metrics like annuities and whole life insurance, showing family history can impact premiums.
Talk at the modcov19 CNRS workshop, en France, to present our article COVID-19 pandemic control: balancing detection policy and lockdown intervention under ICU sustainability
The document discusses research on the relationship between family history and life insurance. It summarizes existing literature showing modest but robust connections between the lifespans of family members like spouses, parents and children, and grandparents and grandchildren. The document then presents analyses using a genealogical dataset, finding correlations between related individuals' lifespans. It explores how these family dependencies could impact life insurance premiums and quantities like annuities, widow's pensions, and life expectancies.
This document discusses the use of machine learning techniques in actuarial science and insurance. It begins with an overview of predictive modeling applications in insurance such as fraud detection, premium computation, and claims reserving. It then covers traditional econometric techniques like Poisson and gamma regression models and how machine learning is emerging as an alternative. The document emphasizes evaluating model goodness of fit and uncertainty, and addresses issues like price discrimination and fairness.
This document summarizes a paper on reinforcement learning in economics and finance. It introduces reinforcement learning concepts like agents, environments, actions, rewards, and states. It then discusses applications of reinforcement learning frameworks in economic problems like inventory management, consumption and income dynamics, and experiments. Finally, it notes connections between reinforcement learning and other fields like operations research, stochastic games, and finance.
This document models the COVID-19 pandemic using a compartmental SIDUHR+/- model that divides the population into susceptible (S), infected asymptomatic (I-), infected symptomatic (I+), recovered asymptomatic (R-), recovered symptomatic (R+), hospitalized (H), ICU (U), and dead (D) categories. Optimal lockdown policies are determined by minimizing costs related to deaths, economic impact, testing needs, and immunity while ensuring ICU sustainability. Increasing ICU capacity allows less stringent lockdown policies while achieving similar outcomes. Faster detection of asymptomatic cases through increased testing also enables more flexible lockdown policies.
The document summarizes research on using genealogical data to model dependencies in life spans between family members and quantify the impact on insurance premiums. It presents analysis of husband-wife, parent-child, and grandparent-grandchild relationships, showing dependencies exist. Mortality rates, life expectancies, and insurance quantities like annuities are estimated conditionally based on family history information.
The document discusses natural language processing techniques including word embeddings, text classification using naive Bayes classifiers, and probabilistic language models. It provides examples of part-of-speech tagging and analyzing sentiment. Key concepts covered include the bag-of-words assumption, n-gram models, and maximum likelihood estimation. Various papers on related topics are cited throughout.
This document discusses network representation and analysis. It defines networks as consisting of nodes (vertices) and edges, and describes different ways to represent networks mathematically using adjacency matrices, incidence matrices, and Laplacian matrices. It also discusses visualizing networks using multidimensional scaling and plotting them in R. Special types of networks like complete graphs and random graphs are briefly introduced.
The document discusses various techniques for classifying pictures using neural networks, including convolutional neural networks. It describes how convolutional neural networks can be used to classify images by breaking them into overlapping tiles, applying small neural networks to each tile, and pooling the results. The document also discusses using recurrent neural networks to classify videos by treating them as higher-dimensional tensors.
The document discusses using unusual data sources in insurance. It provides examples of using pictures, text, social media data, telematics, and satellite imagery in insurance. It also discusses challenges in analyzing complex and high-dimensional data from these sources and introduces machine learning tools like PCA, generalized linear models, and evaluating models using loss, risk, and cross-validation.
This document discusses classification and goodness of fit in machine learning. It introduces concepts like confusion matrices, ROC curves, and measures like sensitivity, specificity, and AUC. ROC curves are constructed by plotting the true positive rate vs. false positive rate for different classification thresholds. The AUC can measure classifier performance, with higher values indicating better classification. Chi-square tests and bootstrapping are also discussed for evaluating goodness of fit.
Si la baisse de la productivité est effective dans toutes les économies développées... elle est particulièrement marquée en France. Au niveau national, cet essoufflement touche tous les secteurs, et plus particulièrement celui de l’industrie, usuellement caractérisé par des gains de productivité élevés. Depuis la crise Covid, le secteur industriel contribue pour 35 % environ à cette perte, alors qu’il ne représente que 9,3 % de la valeur ajoutée nationale brute en 2023. Dans ce contexte, est-il possible de mener une politique de réindustrialisation du pays sans y associer un objectif de hausse des gains de productivité ?Non rappelle ce Cube. Au contraire, ces deux objectifs, jusqu’alors indépendants l’un de l’autre, sont désormais deux défis à relever conjointement. En analysant les différents explications à la baisse de celle-ci observée en France et dans les autres économies développées, ce Cube suggère que l’augmenter en parallèle d’une politique de réindustrialisation sous-entend une réallocation des facteurs de production vers les entreprises industrielles à fort potentiel. Elle suppose également une une meilleure affectation des ressources.
Comprendre le vote aux élections européennes du 9 juin 2024
Mar 9h30-codecollab-dutangc
1. CODE COLLABORATIF EN R, USAGES ET BONNES PRATIQUES
TIRÉS D’EXPÉRIENCES PERSONNELLES
ACTINFO #6
Christophe Dutang1,2
1
Institut du Risque et de l’Assurance (IRA) et Le Mans Université, Le Mans, France
2
Laboratoire Manceau de Mathématiques (LMM)
7 mars 2017
2. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
PLAN
FORCES ET FAIBLESSES DE R PAR RAPPORT AUX AUTRES LOGICIELS
Données, modèles, graphiques, performances
L’ÂGE DE LA PIERRE : AVANT R-FORGE
Quelques essais
L’ÂGE DU BRONZE : R-FORGE
R-forge
L’ÂGE DU FER : GITHUB AND CO
R et LATEX
2/44 – Christophe Dutang – Actinfo #6 07/03/2017
3. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
PLAN
FORCES ET FAIBLESSES DE R PAR RAPPORT AUX AUTRES LOGICIELS
Données, modèles, graphiques, performances
L’ÂGE DE LA PIERRE : AVANT R-FORGE
Quelques essais
L’ÂGE DU BRONZE : R-FORGE
R-forge
L’ÂGE DU FER : GITHUB AND CO
R et LATEX
3/44 – Christophe Dutang – Actinfo #6 07/03/2017
4. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
DONNÉES CHARGEABLES EN MÉMOIRE VIVE
Fonctionnement
Logiciel Stockage Avantage Défaut
SAS Volumineux (≈1 To) Lent (40 à 60 Mo/s)
matlab Rapide (1 à 20 Go/s) Peu volumineux (≈8 Go)
R Rapide (1 à 20 Go/s) Peu volumineux (≈8 Go)
Lecture de fichiers standard
Type SAS matlab R
csv, txt data+infile fscanf read.table
Excel proc import xlsread read.xls
4/44 – Christophe Dutang – Actinfo #6 07/03/2017
5. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
DONNÉES MASSIVES
Beaucoup de solutions existent. . .
Type SAS (natif) matlab (spécifique) R (spécifique)
Base SQL proc import xlsread RODBC, DBI
Internet proc download webread download.file
Enorme fichier data+infile datastore ff, bigmemory
Mais beaucoup reste à faire!
5/44 – Christophe Dutang – Actinfo #6 07/03/2017
6. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
RÉSOLUTION NUMÉRIQUE - ALGÈBRE LINÉAIRE
La bibliothèques http://www.netlib.org/lapack/ fournit une grand
variété d’algorithme pour
• la résolution de système linéaire
• les solutions des moindres carrés
• le calcul de valeur propre
• la décomposition en valeur singulière
• les factorisations de matrices (LU, Cholesky, . . . )
le tout pour des matrices réelles ou complexes.
Malgré que la bibliothèque soit écrit en Fortran 90, elle est utilisée par
• Matlab
• Octave
• NAG Numerical Librairies
• Maple
• R project
• Scilab
• Ceemple
6/44 – Christophe Dutang – Actinfo #6 07/03/2017
7. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
RÉSOLUTION NUMÉRIQUE - OPTIMISATION
Algo standard Type R SAS matlab
Nelder-Mead derivative free optim proc NLMIXED fminsearch
BFGS Hessian free optim proc NLMIXED fminsearch
L-BFGS large scale optim proc NLMIXED
Algo avancé R SAS matlab
opt. sous contrainte pkg spécifique proc optmodel fmincon
opt. sur les entiers Rsymphony proc LP optim. toolbox
algo génétique rgenoud proc genetic pkg spécifique
Voir R, SAS, matlab
7/44 – Christophe Dutang – Actinfo #6 07/03/2017
8. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
MODÈLES DE RÉGRESSION ET DE SÉRIES TEMPORELLES
Modèle de régression R SAS matlab
Modèle linéaire lm proc glm fitlm
Modèle linéaire généralisé glm proc genmod fitglm
Séries temporelles R SAS matlab
Autorégressifs AR ar proc autoreg arima
ARIMA arima % MA arima
GARCH garch proc autoreg garch
et plein d’autres https://cran.r-project.org/view=Econometrics,
https://cran.r-project.org/view=TimeSeries
8/44 – Christophe Dutang – Actinfo #6 07/03/2017
9. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
GRAPHIQUES STATIQUES
Tout type de fichier image png(), jpeg(), bmp(), voir
http://www.r-graph-gallery.com/
9/44 – Christophe Dutang – Actinfo #6 07/03/2017
10. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
GRAPHIQUES DYNAMIQUES ET AUTRE MULTIMÉDIA
R permet
• graphiques interactifs avec SVG
• film avec animation
• création de son avec tuneR
• analyse de son avec seewave
mais aussi
• LATEX Markup : les packages reporttools, xtable, tables fournissent
les outils pour transformer les objets R en LATEX. exemple xtable, reporttools,
et aussi
• HTML Markup : les packages R2HTML, knitr permet de créer des
documents html. exemple markdown, R2HTML
• Microsoft Formats : fichier words avec R2wd, fichier power point avec
R2PPT, fichier excel (dataframes2xls, WriteXLS, xlsReadWrite).
10/44 – Christophe Dutang – Actinfo #6 07/03/2017
11. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
SUR L’UTILITÉ DU PDF
Le Portable Document Format, communément abrégé en PDF, est un langage de
description de pages créé par la société Adobe Systems en 1993 disponible sur
• ordinateur : Windows, Mac OS, GNU/Linux,
• téléphone : iOS, Palm OS, Pocket PC, Windows Mobile, Symbian OS,
Android,
• serveur : Sun Solaris Sparc, . . .
Pour tout logiciel WYSIWYG, il suffit d’imprimer en pdf : via pdfcreator ou
directement le logiciel.
Pour LATEX , c’est la sortie par défaut!
11/44 – Christophe Dutang – Actinfo #6 07/03/2017
12. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
PDFS AVEC CODE – SWEAVE = R+LATEX
Voir https://www.statistik.lmu.de/~leisch/Sweave/
12/44 – Christophe Dutang – Actinfo #6 07/03/2017
13. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
PDFS AVEC CODE – R MARKDOWN = R,LATEX,WIKI TYPE
Voir http://rmarkdown.rstudio.com/
13/44 – Christophe Dutang – Actinfo #6 07/03/2017
14. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
PRÉSENTATION
La classe beamer de LATEXpermet de réaliser des présentations, voir ici
14/44 – Christophe Dutang – Actinfo #6 07/03/2017
15. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
SIMULATION
Des simulations démarrent avec de bons générateurs aléatoires. Tous les
logiciels sauf excel utilisent l’algorithme Mersenne Twister
Logiciel R matlab SAS scilab excel
Algo U(0,1) MT19937 MT19937 MT19937 MT19937 ≈Wichman-Hill
Période 219937 − 1 219937 − 1 219937 − 1 219937 − 1 6.9536e12
Init seed oui oui oui oui non
Algo N(0,1) inv. num. Marsaglia-Tang Box-Muller
Parallèle oui oui oui
• R propose une très grande variété des lois dans des pkg spécifiques.
• matlab propose moins de lois mais plus par défaut.
• comparatif R et SAS
15/44 – Christophe Dutang – Actinfo #6 07/03/2017
16. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
COMMENT PARALLÉLISER EN R
Nombreuses options existent pour paralléliser le code
• parallélisation explicite : package parallel de R mais aussi Rmpi, snow
temps (sec) R (base) parallel 1 parallel 2 parallel 3 parallel 4
10 échant. 0.97 1.03 0.53 0.49 0.40
100 échant. 9.42 10.26 5.08 4.20 3.33
1000 échant. 90.71 101.97 50.01 41.16 32.71
TABLE: Moyenne d’échantillons gaussien
• parallélisation implicite par pnmath, . . .
• GPUs : gputools fournit des outils, WideLM des modèles de régression,
gmatrix des opérations de matrices.
• voir
https://CRAN.R-project.org/view=HighPerformanceComputing
16/44 – Christophe Dutang – Actinfo #6 07/03/2017
17. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
COMMENT UTILISER DU CODE COMPILÉ
De base, on peut utiliser
• C via un package R : chapitre 6 de r-exts.pdf
• Fortran via un package R : chapitre 6 de r-exts.pdf
permet d’accélérer le code, d’utiliser la librairie LAPACK, les versions C des
fonctions R (optimisation, fonction spéciales,. . . )
D’autres packages sont disponibles
• inline pour utiliser du code C, Fortran, C++ directement dans R.
• Rcpp pour du code C++.
• rJava pour du code Java.
17/44 – Christophe Dutang – Actinfo #6 07/03/2017
18. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
COMMENT AUGMENT LA PRÉCISION DE CALCUL
Comment calculer la somme binomiale alternée par
Sn(f) =
n
k=n0
Ck
n (−1)k
f(k),
où Ck
n = n!
k!(n−k)!
et f une fonction, par exemple log(.),
√
. ou un polynome.
Utilisez les bibliothèques GMP, mpfr via le package Rmpfr.
0 20 40 60 80 100
-0.6-0.4-0.20.00.20.40.60.8
Binomial sum of f(x) = sqrt(x)
n
S(n,f)
asymptotic
R
mpfr
0 20 40 60 80 100
-14-12-10-8-6-4-2
Binomial sum of f(x) = x^(-2)
n
S(n,f)
asymptotic
R
mpfr
18/44 – Christophe Dutang – Actinfo #6 07/03/2017
19. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
PLAN
FORCES ET FAIBLESSES DE R PAR RAPPORT AUX AUTRES LOGICIELS
Données, modèles, graphiques, performances
L’ÂGE DE LA PIERRE : AVANT R-FORGE
Quelques essais
L’ÂGE DU BRONZE : R-FORGE
R-forge
L’ÂGE DU FER : GITHUB AND CO
R et LATEX
19/44 – Christophe Dutang – Actinfo #6 07/03/2017
20. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
CHRONOLOGIE DES CONTRIBUTIONS AU LOGICIEL R
Nom pkg. Année Dépôt Rôle pour le pkg Mon statut
rhosp 2006 créateur étudiant Ensimag
actuar 2007 act.ulaval.ca contributeur étudiant Isfa
expm 2007 R-forge contributeur étudiant Isfa
gumbel 2008 créateur étudiant Isfa
randtoolbox 2008 R-forge créateur étudiant Isfa
rngWELL 2008 R-forge créateur étudiant Isfa
fitdistrplus 2009 R-forge contributeur doctorant Isfa
GNE 2010 R-forge créateur doctorant Isfa
NLIG 2011 créateur doctorant Isfa
RTDE 2014 créateur McF Strasbourg
CASdatasets 2014 github créateur McF Strasbourg
lifecontingencies 2015 github contributeur McF Le Mans
mbbefd 2015 github contributeur McF Le Mans
tsallisqexp 2015 créateur McF Le Mans
POT 2016 R-forge contributeur McF Le Mans
20/44 – Christophe Dutang – Actinfo #6 07/03/2017
21. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
CVS À L’ENSIMAG
Pour collaborer (à plusieurs) sur un projet, il faut utiliser une logiciel de gestion
de version (Version Control System en anglais)
• https://fr.wikipedia.org/wiki/Logiciel_de_gestion_de_versions
• Un logiciel de gestion de versions agit sur une arborescence de fichiers afin de
conserver toutes les versions des fichiers, ainsi que les différences entre les fichiers.
A l’ensimag, on a utilisé le système CVS (Concurrent Versions System) pour le
projet compilation.
• développé entre 1990 et 2006
• CVS propose qq commandes fondamentales cvs commit, cvs update
21/44 – Christophe Dutang – Actinfo #6 07/03/2017
22. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
PROJET DE SPÉCIALITÉ: RHOSP
Les projets de spécialité en 2A dure 1 mois (les cours sont banalisés).
• sujet : Evaluation des risques lors d’une hospitalisation par une approche
actuarielle
• encadrant : Olivier François, PU, TIMC
• en binôme avec Julie Barthés
• plusieurs milliers lignes de code R très mal écrites
Nouveautés :
• création d’un package R avec package.skeleton()
• architecture d’un package R/,man/,inst/
22/44 – Christophe Dutang – Actinfo #6 07/03/2017
23. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
PROJET ACTUAR
Stage de master recherche à l’université Laval (Québec)
• sujet : réassurance optimale, fonction Gerber-Shiu et probabilités de ruine
avec phase-type
• encadrant : Etienne Marceau et Vincent Goulet
• contribution au package actuar
Nouveautés:
• utilisation du logiciel svn (subversion) : extension de CVS
• qq centaines de ligne code R
• qq centaines de ligne code C (src/)
• dépôt local de développement act.ulaval.ca avant soumission au
CRAN
• branches : développement séparé du dépôt
• tags : labelisation d’une version à une date donnée
• trunk : version courante stable du dépôt
• création de documentation orientée utilisateur (vignette (vignettes/))
• article publié dans le JSS
23/44 – Christophe Dutang – Actinfo #6 07/03/2017
24. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
BILAN DU PROJET ACTUAR
1. développement collaboratif de code via svn
2. utilisation des branches pour le code
3. réflexion autour de l’utilisation des fonctions
par les utilisateurs
4. apprentissage de code C/Fortran dans un
package R
24/44 – Christophe Dutang – Actinfo #6 07/03/2017
25. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
PLAN
FORCES ET FAIBLESSES DE R PAR RAPPORT AUX AUTRES LOGICIELS
Données, modèles, graphiques, performances
L’ÂGE DE LA PIERRE : AVANT R-FORGE
Quelques essais
L’ÂGE DU BRONZE : R-FORGE
R-forge
L’ÂGE DU FER : GITHUB AND CO
R et LATEX
25/44 – Christophe Dutang – Actinfo #6 07/03/2017
26. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
PROJET EXPM
Suite du stage de master
• sujet : exponentielle de matrice
• en équipe avec Vincent Goulet et Martin Maechler (ETHZ)
• contribution au package expm
Nouveautés :
• utilisation de R-forge
• développement d’une fonction comme
pour les fonctions dans R
1. programmation défensive
2. code synthétique
3. utilisation intensive de code C
4. utilisation de routine Fortran d’algèbre
linéaire
http://www.netlib.org/lapack/
5. test automatique (tests/)
26/44 – Christophe Dutang – Actinfo #6 07/03/2017
27. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
PROJET GUMBEL
Projet copule à l’ISFA
• sujet : copule de Gumbel
• en équipe avec des étudiants de l’ISFA
• création du package gumbel
Nouveautés:
• travailler avec des débutants en R et en
LATEX
• rendre le package le plus simple
d’utilisation
Limites:
• pas de dépôt svn
27/44 – Christophe Dutang – Actinfo #6 07/03/2017
28. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
PROJETS RANDTOOLBOX/RNGWELL
Groupe de travail à l’ISFA
• sujet : générateurs aléatoires
• collaboration avec Petr Savicky
• création des packages randtoolbox,rngWELL inclut dans Rmetrics
Nouveautés :
• utiliser du code C extérieur
• utiliser du code fortran extérieur
• gérer les licences
• GNU General Public License : droit de
redistribution contraint, http:
//www.gnu.org/licenses/gpl.html
• lesser GPL : s’affranchit du caractère
héréditaire de la GPL, http:
//www.gnu.org/licenses/lgpl.html
• BSD : facilite l’utilisation et la redistribution,
mais protège les auteurs,
https://www.freebsd.org/
copyright/license.html
Limites:
• peu d’utilisateurs
28/44 – Christophe Dutang – Actinfo #6 07/03/2017
29. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
PROJET FITDISTRPLUS
Projet complémentaire à la thèse
• sujet : estimation pour les modèles paramétriques
• collaboration avec Marie-Laure Delignette Muller
• contribution au package fitdistrplus
Nouveautés :
• utilisation intensive de svn pour le dépôt
R-forge http://riskassessment.
r-forge.r-project.org/
• plusieurs familles d’utilisateurs:
ecotoxicologie, actuariat, . . .
• article publié dans le JSS
Limites:
• peu de développeurs
• peu d’interactions entre package
29/44 – Christophe Dutang – Actinfo #6 07/03/2017
30. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
PROJETS GNE/NLIG
Projets lié à la thèse
• sujet : calcul d’équilibre de Nash généralisé et jeux non-coopératifs en
assurance
• création de 2 package GNE et NLIG intégré au projet
http://optimizer.r-forge.r-project.org/
Limites pour GNE :
• seul
• dépendances sur d’autres packages : alabama, nleqslv, BB, SQUAREM
Limites pour NLIG :
• aucun dépôt pour le développement
• seul
30/44 – Christophe Dutang – Actinfo #6 07/03/2017
31. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
PLAN
FORCES ET FAIBLESSES DE R PAR RAPPORT AUX AUTRES LOGICIELS
Données, modèles, graphiques, performances
L’ÂGE DE LA PIERRE : AVANT R-FORGE
Quelques essais
L’ÂGE DU BRONZE : R-FORGE
R-forge
L’ÂGE DU FER : GITHUB AND CO
R et LATEX
31/44 – Christophe Dutang – Actinfo #6 07/03/2017
32. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
CASDATASETS
Projet lié au livre Computational Actuarial Science with R
• sujet : données actuarielles
• collaboration avec Arthur Charpentier
• création du package CASdatasets
Nouveautés :
• grand nombre de jeux de données
• package non télécharge depuis CRAN
• dépôt nord-américain http://cas.uqam.ca/
• dépôt européen http://dutangc.free.fr/pub/
RRepos/web/CASdatasets-index.html
• finalement utilisation de git via github
https://github.com/dutangc/CASdatasets
Limites:
• peu de développeurs
• données volumineuses
32/44 – Christophe Dutang – Actinfo #6 07/03/2017
33. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
LIFECONTINGENCIES/MBBEFD
Projet lifecontingencies
• sujet : calculs actuariels en assurance vie
• collaboration avec Giorgio Spedicato
• contribution au package lifecontingencies
Nouveautés :
• utilisation de github
https://github.com/spedygiorgio/lifecontingencies
Projet mbbefd
• sujet : lois de taux de destruction
• collaboration avec Giorgio Spedicato et Markus Gesmann
• contribution au package mbbefd
Nouveautés :
• interaction avec fitdistrplus : héritage de classe
• utilisation de C++ via Rcpp
• utilisation de github https://github.com/spedygiorgio/mbbefd
• utilisation de Rmarkdown
33/44 – Christophe Dutang – Actinfo #6 07/03/2017
34. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
TSALLISQEXP
Projet d’archivage
• sujet : loi de Tsallis ou q-exponentielle
• collaboration avec Paul Higbie et Cosma Shalizi
• création du package tsallisqexp
Nouveautés
• suggestion d’un pkg par Paul Higbie
• formattage du code R de Cosma Shalizi
Limites
• pas de dépôt
→
34/44 – Christophe Dutang – Actinfo #6 07/03/2017
35. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
POT
Poursuite de travaux
• sujet : méthode peak over thresholds
• collaboration avec Mathieu Ribatet
• maintenance du package POT
Nouveautés :
• maintenance du code R de Mathieu
Ribatet
• projet svn via R-forge
Limites:
• pas de nouvelles fonctionnalités
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
0.0 0.2 0.4 0.6 0.8 1.0
0.00.40.8
Probability plot
Empirical
Model
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●
●●●●●●●●●●●●●●●●●●●●●●●● ● ●
10.0 10.5 11.0 11.5
10.010.410.811.2
QQ−plot
Model
Empirical
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
−
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
−
10 11 12 13 14
0.00.51.01.5
Density Plot
Quantile
Density
1 2 5 20 100 500
10.010.511.011.5
Return Level Plot
Return Period (Years)
ReturnLevel
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●● ● ● ●
Figure 8: Graphical diagnostic for a fitted POT model (univariate case)35/44 – Christophe Dutang – Actinfo #6 07/03/2017
36. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
DIFFÉRENCES ENTRE GIT ET SVN
Les forces de git par rapport à svn
1. système distribué par nature :
• dans le système distribué git, tous les utilisateurs ont une copie du dépôt,
permettant de travailler hors ligne → récupération plus facile en cas de perte
• dans le système centralisé svn, tous les utilisateurs doivent communiquer avec
le dépôt central pour mettre à jour, obtenir l’historique d’un fichier →
récupération difficile en cas de perte
2. controle d’accès :
• dans git, les utilisateurs peuvent maintenir leur propre version de leur dépôt,
tandis que le dépôt principal est maintenu par son propriétaire.
• dans svn, les utilisateurs doivent tjs accéder au dépôt central pour versionner
leur fichier.
3. gestion des branches : git facilite leur utilisation au point que les dépôts
locaux des utilisateurs sont des branches et non des copies du dépôt central
4. performance : git est plus rapide car il ne requiert pas internet (diff,
commit,. . . )
36/44 – Christophe Dutang – Actinfo #6 07/03/2017
37. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
DIFFÉRENCES ENTRE GIT ET SVN
Les forces de git par rapport à svn
5. taille : un dépôt git prend entre 10 et 30 fois moins de place qu’un dépôt
svn: plusieurs dossiers .svn/ contre un dossier .git/
6. fin de ligne (CRLF ou LF) : git propose une conversion automatique des
fichiers plutot qu’une spécification comme dans svn.
Les forces de svn par rapport à git
1. checkout partiel possible
2. numéro de version intelligible
37/44 – Christophe Dutang – Actinfo #6 07/03/2017
38. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
GIT POUR D’AUTRES PROJETS
git est utilisé pour plein d’autres projets que R
• personnellement, utilisation pour gérer les versions de fichier LATEX via les
dépôts https://bitbucket.org/,
https://portail.math.cnrs.fr/service/Vcs
• voir https://git-scm.com/
38/44 – Christophe Dutang – Actinfo #6 07/03/2017
39. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
NB DÉPÔT SUR HTTPS://GITHUB.COM/
39/44 – Christophe Dutang – Actinfo #6 07/03/2017
40. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
NB PUSH/FORK SUR HTTPS://GITHUB.COM/
40/44 – Christophe Dutang – Actinfo #6 07/03/2017
41. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
POPULARITÉ DE R
(HTTP://R4STATS.COM/ARTICLES/POPULARITY/)
41/44 – Christophe Dutang – Actinfo #6 07/03/2017
42. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
PROMOTION D’UN PACKAGE
Quelques idées
• publier dans R journal https://journal.r-project.org/ ou JSS
https://www.jstatsoft.org/index
• annoncer sur les mailing list
https://www.r-project.org/mail.html,
• se faire référencer sur task view
https://cran.r-project.org/web/views/
• présenter en conférences useR
https://www.r-project.org/conferences.html
• faire des videos youtube ou un MOOC,
e.g. http://factominer.free.fr/
• faciliter la vie de l’utilisateur,
• avec des vignettes,
• avec une FAQ
e.g. https://CRAN.R-project.org/package=fitdistrplus
42/44 – Christophe Dutang – Actinfo #6 07/03/2017
43. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
FAIRE UN PACKAGE
Pourquoi faire?
• documenter un groupe de fonctionnalités (pour ne pas oublier),
• faciliter la maintenance,
• partager avec d’autres.
Comment?
• un modèle est fourni avec package.skeleton
• fichiers DESCRIPTION, NAMESPACE
• dossiers R, data, inst, man, src, tests, vignettes
• utiliser l’aide de Rstudio, voir http://r-pkgs.had.co.nz/
Les bonnes pratiques
• Ne jamais utiliser d’accent
• Réaliser des tests unitaires
• Bien choisir les noms de fonction et les documenter
43/44 – Christophe Dutang – Actinfo #6 07/03/2017
44. Forces et faiblesses de R L’âge de la pierre : avant R-forge L’âge du bronze : R-forge L’âge du fer : github and co Conclusion
RÉFÉRENCES
“Let’s not kid ourselves: the most widely used piece of software for statistics is
Excel.” B.D. Ripley, Opening lecture RSS 2002, Plymouth
• livres gratuits : https://bookdown.org/,
http://adv-r.had.co.nz/,
• Choix d’un logiciel de versioning https://en.wikipedia.org/wiki/
Comparison_of_version_control_software
• Statistique sur github http://githut.info/
• Petite aide pour git
http://rogerdudler.github.io/git-guide/index.fr.html
• Utilité des forks pour développer un logiciel https://fr.wikipedia.
org/wiki/Fork_(d%C3%A9veloppement_logiciel)
• comparaison git/svn
• https://git.wiki.kernel.org/index.php/GitSvnComparison,
• https://fr.slideshare.net/neuros/git-vs-svn-16274971,
• https://help.github.com/articles/
what-are-the-differences-between-subversion-and-git/
44/44 – Christophe Dutang – Actinfo #6 07/03/2017