{"word_count": 178, "character_count": 1769}
Encore quelques données pour faire un TP de statistique. Ce sont des données de coûts d'ouragans, aux Etats-Unis,&#62; library(gdata)&#62; db=read.xls(+     "http://sciencepolicy.colorado.edu/publications/special/public_data_may_2007.xls",+     sheet=1)&#62; stupidcomma = function(x){+  x=as.character(x)+  for(i in 1:10){x=sub(",","",as.character(x))}+  return(as.numeric(x))}&#62; base=db[,1:4]&#62; base$Base.Economic.Damage=Vectorize(stupidcomma)(db$Base.Economic.Damage)&#62; base$Normalized.PL05=Vectorize(stupidcomma)(db$Normalized.PL05)&#62; base$Normalized.CL05=Vectorize(stupidcomma)(db$Normalized.CL05)Lire la base est un peu pénible, à cause de virgules qui traînent comme séparateur de milliers. Mais peu importe, le petit code permet de nettoyer la base.Fréquence d'ouragansLa première étape pourra être de travailler sur la fréquence. On pourra ajuster des lois de Poisson, ou binomiales, ou binomiales négatives, et faire des tests de stabilité du paramètre, avec le temps (on pourra  couper en 4 ou 5 blocs).&#62; TB &#60;- table(base$Year)&#62; years &#60;- as.numeric(names(TB))&#62; counts &#60;- as.numeric(TB)&#62; years0=(1900:2005)[which(!(1900:2005)%in%years)]&#62; db &#60;- data.frame(years=c(years,years0),+       counts=c(counts,rep(0,length(years0))))&#62; db[88:93,]   years counts88  2003      389  2004      690  2005      691  1902      092  1905      093  1907      0&#62; plot(years,counts,type='h')Coût des ouragansDans un second temps, on pourra travailler sur le coût des ouragans&#62; plot(base$Normalized.PL05/1e9,type="h")On pourra tenter d'ajuster des lois, log normale, gamma, Pareto, etc. Faire des tests d'ajustement. Et tester la stabilité des paramètres, dans le temps (en coupant en 2 blocs, par exemple, ou davantage).