Calcul des tendances avec MDX – tendance logarithmique

Posté par wissemhabboub le 12 juin 2008

Une courbe de tendance logarithmique est utilisée lorsque la fréquence de modification des données augmente ou diminue rapidement, puis se stabilise. Une courbe de tendance logarithmique peut utiliser des valeurs négatives et/ou positives. La formule d’une tendance logarithmique se présente comme suit : Y=a * log(x)+b.

 exemple graphe tendance logarithmique

On peut dire donc, que la tendance logarithmique d’une variable y en fonction d’une variable x est la regression linéaire du log(x)

Exemple MDX : adventureWorks pour le calcul de la tendance logarithmique des ventes.

L’exemple suivant est le même que l’exemple de l’article précedent sauf qu’à la place de x on va fournir log(x) à la fonction LinRegPoint. on calcul la valeur de Y (dans notre cas le montant des ventes) en fonction de log(x) (dans notre cas le temps).

LINREGPOINT( Excel!Ln(Rank([Order Date].[Calendar].CurrentMember,[Order Date].[Calendar].CurrentMember.Level.Members)),

DESCENDANTS([Order Date].[Calendar].[All],[Order Date].[Calendar].CurrentMember.Level),

[Measures].[Internet Sales Amount],

Excel!Ln( Rank([Order Date].[Calendar].CurrentMember,[Order Date].[Calendar].CurrentMember.Level.Members)) )

Dans cet exemple j’ai utiliser la fonction Ln d’excel qui calcul le logarithme népérien, on peut utiliser les fonctions d’excel dans MDX à condition qu’Excel soit installé sur le serveur ou SQL Server Analysis Services est installé.

L’exemple ci-dessus calcul la tendance logarithmique du montant des ventes de AdventureWorks pour n’importe quel niveau de la dimension temps. C’est-à-dire si on explore avec les mois il va calculer la tendance logarithmique des mois et il peut prédire les prochaines valeurs des ventes pour les mois/trimestre/année à venir.

Publié dans Analysis Services | Pas de Commentaire »

SQL Server 2008 RC0 est disponible pour téléchargement

Posté par wissemhabboub le 8 juin 2008

Une bonne nouvelle Sourire,

SQL Server 2008 Release Condidate 0 est sorti, il est disponible pour téléchargement à partir des liens suivants:

Download SQL Server 2008 RC0 (MSDN subscribers)

Download SQL Server 2008 RC0 (TechNet Plus subscribers)

Download SQL server 200_ RC0 (public)

Publié dans SQL 2008 | Pas de Commentaire »

Calcul des tendances avec MDX – Regression linéaire

Posté par wissemhabboub le 5 juin 2008

La régression linéaire est une méthode statistique de suivi de la tendance. Ses résultats sont habituellement proches de la moyenne mobile & les modes d’utilisation sont similaires. Elle présente les valeurs de la variable sous forme d’une droite avec l’équation : Y=aX+b (ou y est la valeur de la variable, x représente dans les cas des tendances le temps)

 

 Calcul des tendances avec MDX - Regression linéaire dans Analysis Services regressionlinaire

 

Une courbe de tendance linéaire est une ligne droite pondérée qui est utilisée avec des ensembles de données linéaires simples. Vos données sont linéaires si le motif des points de données ressemble à une ligne. Une courbe de tendance linéaire représente généralement une augmentation ou une diminution régulière.

Exemple MDX : adventureWorks pour le calcul de la régression linéaire des ventes. 

L’exemple suivant calcul la valeur de Y (dans notre cas le montant des ventes) en fonction de x (dans notre cas le temps). 

LINREGPOINT(

Rank([Order Date].[Calendar].CurrentMember,[Order Date].[Calendar].CurrentMember.Level.Members),   

DESCENDANTS([Order Date].[Calendar].[All],[Order Date].[Calendar].CurrentMember.Level),  [Measures].[Internet Sales Amount],                 

Rank([Order Date].[Calendar].CurrentMember,[Order Date].[Calendar].CurrentMember.Level.Members) ) 

L’exemple ci-dessus calcul la regression linéaire du montant des ventes de AdventureWorks pour n’importe quel niveau de la dimension temps. C’est-à-dire si on explore avec les mois il va calculer la regression linéaire des mois et il peut prédire les prochaines valeurs des ventes pour les mois/trimestre/année à venir. 

Syntaxe et arguments de la fonction LinRegPoint  (extrait du technet) : 

LinRegPoint(Slice_Expression_x, Set_Expression, Numeric_Expression_y [ ,Numeric_Expression_x ] ) 

Slice_Expression_x   Expression numérique valide qui correspond généralement à une expression MDX (Multidimensional Expressions) des coordonnées des cellules qui retournent un nombre représentant les valeurs de l’axe de secteur. 

Set_Expression   Expression MDX (Multidimensional Expressions) valide qui retourne un jeu. 

Numeric_Expression_y  Expression numérique valide qui correspond généralement à une expression MDX (Multidimensional Expressions) des coordonnées des cellules qui retournent un nombre représentant les valeurs de l’axe des ordonnées. 

Numeric_Expression_x   Expression numérique valide qui correspond généralement à une expression MDX (Multidimensional Expressions) des coordonnées des cellules qui retournent un nombre représentant les valeurs de l’axe des abscisses. 

 La régression linéaire qui utilise la méthode des moindres carrés calcule l’équation d’une droite de régression (c’est-à-dire de la meilleure ligne pour une série de points). La droite de régression s’exprime par l’équation suivante, où a représente la pente et b l’ordonnée à l’origine :  y = ax+b  La fonction LinRegPoint évalue le jeu spécifié par rapport à la deuxième expression numérique pour extraire les valeurs de l’axe des ordonnées. Elle évalue ensuite le jeu spécifié par rapport à la troisième expression numérique (si cette dernière est précisée) pour extraire les valeurs de l’axe des abscisses. Si la troisième expression numérique n’est pas spécifiée, la fonction utilise le contexte actuel des cellules dans le jeu spécifié en tant que valeurs de l’axe des abscisses. Il est fréquent de ne pas spécifier l’argument de l’axe des abscisses avec la dimension Time. Une fois la régression linéaire calculée, la valeur de l’équation est calculée pour la première expression numérique, puis retournée. 

En plus des explications du technet cité ci-dessus et par rapport à notre exemple je vouderai juste préciser qu’il faut fournir à l’argument Slice_Expression_x  les coordonées  et non les valeurs de x c’est pour cela que dans notre exemple on a utilisé la fonction RANK. 

Fonction Linregpoint :   http://technet.microsoft.com/fr-fr/library/ms144752(SQL.100).aspx 

Fonction Descendants : http://technet.microsoft.com/fr-fr/library/ms146075(SQL.100).aspx 

Fonction Rank :  http://technet.microsoft.com/fr-fr/library/ms144726(SQL.100).aspx 

 

Publié dans Analysis Services | Pas de Commentaire »

 

Mémoire Professionnel : L'a... |
nxtisi |
Cours informatique PC |
Unblog.fr | Créer un blog | Annuaire | Signaler un abus | Affichage exterieur
| club informatique Gessien
| Les Hackers de Sherwood !*!*!