64 lines
2.3 KiB
Text
64 lines
2.3 KiB
Text
---
|
|
title: "Analyse des données"
|
|
author: "François Pelletier"
|
|
date: "17 octobre 2015"
|
|
output: html_document
|
|
---
|
|
|
|
## Chargement des données
|
|
```{r}
|
|
load(file = "donnees_clean.RData")
|
|
```
|
|
|
|
## Aperçu quantitatif des données
|
|
|
|
```{r}
|
|
library(plyr)
|
|
library(psych)
|
|
library(tm)
|
|
library(RTextTools)
|
|
library(topicmodels)
|
|
```
|
|
|
|
## Nom de l'organisme
|
|
|
|
On remarque, en calculant la fréquence des noms des organismes, que certains d'entre eux présentent des variations dans leur nom. Nous allons corriger ceci en utilisant un algorithme de similarité de la famille Latent Dirichlet Allocation.
|
|
```{r}
|
|
(freq_nom_organisme <- as.data.frame(table(rawdata2$nom_organisme)))
|
|
|
|
|
|
unique_nom_organisme <- unique(rawdata2$nom_organisme)
|
|
|
|
organisme_matrix <- create_matrix(as.vector(unique_nom_organisme),
|
|
language = "french",
|
|
removeNumbers = TRUE,
|
|
stemWords = TRUE,
|
|
weighting = weightTf)
|
|
|
|
|
|
lda_organisme <- LDA(organisme_matrix, 154 , method = "VEM", control = list(alpha = 0.75))
|
|
nom_topic <- data.frame(nom_organisme = unique_nom_organisme,organisme = as.integer(topics(lda_topic)))
|
|
|
|
nom_topic_merged <- merge(nom_topic,freq_nom_organisme,by = "nom_organisme")
|
|
nom_topic_sorted <- nom_topic_merged[order(nom_topic_merged$organisme,-nom_topic_merged$Freq),]
|
|
nom_topic_sorted$organisme[nom_topic_sorted$nom_organisme=="Sécurité publique"] <- 53
|
|
|
|
nom_topic_unique <- ddply(nom_topic_sorted, .(organisme), summarize, nom_organisme=nom_organisme[which.max(Freq)])
|
|
correspondance_nom_organisme <- merge(nom_topic_sorted,nom_topic_unique,by="organisme")
|
|
rawdata3 <- subset(merge(rawdata2,subset(correspondance_nom_organisme, select = -c(Freq,organisme)),by.x = "nom_organisme", by.y = "nom_organisme.x"),select=-c(nom_organisme))
|
|
colnames(rawdata3)[which(names(rawdata3) == "nom_organisme.y")] <- "nom_organisme"
|
|
```
|
|
|
|
## Description du projet
|
|
|
|
```{r}
|
|
unique_description <- unique(rawdata2$description_du_projet)
|
|
description_matrix <- create_matrix(as.vector(unique_description),
|
|
language = "french",
|
|
removeNumbers = TRUE,
|
|
stemWords = TRUE,
|
|
weighting = weightTf)
|
|
lda <- LDA(description_matrix, 30 , method = "VEM", control = list(alpha = 0.1))
|
|
```
|
|
|
|
|