Skip to main content

Inputs for predictive metrics in Microstrategy

Inputs for predictive metrics

A predictive metric can be created using attributes and metrics as its inputs. How you define the attributes and metrics you use as inputs for your predictive metrics affects the resulting predictive metrics, as described in:
Attributes as inputs for predictive metrics
Level metrics as inputs for predictive metrics
Conditional metrics as inputs for predictive metrics

Attributes as inputs for predictive metrics

Attributes can be used as inputs for predictive metrics. Data mining often analyzes non-numeric, demographic, and psychographic information about customers, looking for attributes that are strong predictors.
For example, your MicroStrategy project contains a Customer attribute with related attributes for age, gender, and income. You can include an attribute, such as the Customer attribute, directly in a training metric, as described in Creating a predictive model using MicroStrategy.
By including an attribute directly in a training metric, a predictive metric is then created that includes the attribute as one of its inputs. When using attributes directly in training metrics to create predictive metrics, be aware of the following:
The ID attribute form for the attribute is used by the training metric to include the attribute information in a predictive metric. If attributes include additional attribute forms other than the ID form that are to be used as inputs for predictive metrics, you can create metrics based on these attribute forms. Once these metrics are created, they can then be used as inputs for predictive metrics. This scenario for creating attribute-based predictive metrics is described in Creating metrics to use additional attribute forms as inputs for predictive metrics below.
Attribute forms must use a text or numeric data type. If the attribute form uses a date data type, the data cannot be correctly represented when creating the predictive metric. If an attribute form uses date values, you must convert the date values into a numeric format to use the attribute form to create predictive metrics.

Creating metrics to use additional attribute forms as inputs for predictive metrics

If attributes include additional attribute forms other than their ID form that are to be used as inputs for predictive metrics, you can create metrics based on these attribute forms. The resulting metric can then be used as an input for a predictive metric, thus allowing the attribute information to be included in a predictive metric.
The steps below show you how to create a metric based on an attribute form. The resulting metric, which contains the attribute information, can then be used to create a predictive metric.
Prerequisite
This procedure assumes you are familiar with the process of creating a metric. For steps on how to create metrics, see Advanced Metrics.

To create metrics to use additional attribute forms as inputs for predictive metrics

1Using the Metric Editor, create a new metric expression. All metric expressions must have an aggregation function. To support including attribute information in the metric expression, in the Definition area, type Max() to use the Max aggregation function.
2Within the parentheses of the Max() aggregation function, specify the desired attribute form using the AttributeName@FormName format, where:
AttributeName: Is the name of the attribute. If there are spaces in the attribute name, you can enclose the attribute name in square brackets ([]).
FormName: Is the name of the attribute form. Be aware that this is different than the attribute form category. If there are spaces in the attribute form name, you can enclose the attribute form name in square brackets ([]).
For example, in the image shown below the Discount form of the Promotion attribute is included in the metric.
3Add the attribute as a metric level so that this metric always returns results at the level of the attribute.
4If the predictive metric is to be used to forecast values for elements that do not exist in your project, you must define the join type for the metric used as an input for the predictive metric to be an outer join. For example, the predictive metric is planned to forecast values for one year in the future. Since this future year is not represented in the project, you must define the join type for the metric used as an input for the predictive metric to be an outer join so that values are returned.
To enable outer joins to include all data:
aSelect Metric Join Type from the Tools menu. The Metric Join Type dialog box opens.
bClear the Use default inherited value check box.
cSelect Outer.
dClick OK to close the dialog box.
5If you plan to export predictive metric results to a third-party tool, you should define the column alias for the metric used as an input for the predictive metric. This ensures that the name of the metric used as an input for the predictive metric can be viewed when viewing the exported results in the third-party tool.
To create a metric column alias to ensure the column name matches the metric’s name:
aSelect Advanced Settings from the Tools menu, and then select Metric Column Options. The Metric Column Alias Options dialog box opens.
bIn the Column Name field, type the alias.
cClick OK to close the dialog box.
6Save the metric, using the alias from the previous step as the metric name. You can now include the metric in a training metric to create a predictive metric, as described in Creating a predictive model using MicroStrategy.

Level metrics as inputs for predictive metrics

The attribute used on the rows of the dataset report sets the level of the data by restricting the data to a particular level, or dimension, of the data model.
For example, if the Customer attribute is placed on the rows and the Revenue metric on the columns of a report, the data in the Revenue column is at the customer level. If the Revenue metric is used in the predictive model without any levels, then the data it produces changes based on the attribute of the report using the predictive metric. If Year is placed on the rows of the report described previously, the predictive metric calculates yearly revenue rather than customer revenue. Passing yearly revenue to a predictive model based on customer revenue yields the wrong results.
This problem can be easily resolved by creating a separate metric, which is then used as an input for the predictive metric. This separate metric can be created to match the metric definition for Revenue, but also define its level as Customer. This approach is better than adding a level directly to the Revenue metric itself because the Revenue metric may be used in other situations where the level should not be set to Customer. Such a metric would look like the following.
Prerequisite
This procedure assumes you are familiar with the process of creating a metric. For steps on how to create metrics, see Advanced Metrics.

To create level metrics to use as inputs for predictive metrics

1In the Metric Editor, open the metric that requires a level.
2Clear any Break-by parameters that may exist on the metric’s function:
aHighlight the function in the Definition pane to select it.
bRight-click the function and then select Function_Name parameters. The Parameters dialog box opens.
cOn the Break By tab, click Reset.
dClick OK to close the dialog box.
3Add the necessary attributes as metric levels:
aClick Level (Dimensionality) on the Metric component pane.
bIn the Object Browser, double-click each attribute to add as a level.
4If the predictive metric is to be used to forecast values for elements that do not exist in your project, you must define the join type for the metric used as an input for the predictive metric to be an outer join. For example, the predictive metric is planned to forecast values for one year in the future. Since this future year is not represented in the project, you must define the outer join type for the metric used as an input for the predictive metric so that values are returned.
To enable outer joins to include all data:
aSelect Metric Join Type from the Tools menu. The Metric Join Type dialog box opens.
bClear the Use default inherited value check box.
cSelect Outer.
dClick OK to close the dialog box.
5If you plan to export predictive metric results to a third-party tool, you should define the column alias for the metric used as an input for the predictive metric. This ensures that the name of the metric used as an input for the predictive metric can be viewed when viewing the exported results in the third-party tool.
To create a metric column alias to ensure the column name matches the metric’s name:
aSelect Advanced Settings from the Tools menu, and then select Metric Column Options. The Metric Column Alias Options dialog box opens.
bIn the Column Name field, type the alias.
cClick OK to close the dialog box.
6Save the metric with the alias name from the previous step. You can now include the metric in a training metric to create a predictive metric, as described in Creating a predictive model using MicroStrategy.

Conditional metrics as inputs for predictive metrics

To group a metric’s results by an attribute, create a conditional metric for each category. For example, you want to use customer revenue grouped by payment method in your data mining analysis. If you place the Customer attribute on the rows of the report, the Revenue metric on the columns, and the Payment Method attribute on the columns, you get the following report as a result:
However, this report presents problems if it is used as a dataset report because multiple headings are generated for all the columns, specifically, Revenue and each Payment Method. Additionally, each column is revenue for a particular payment method and unless there is a metric that matches this definition, it is difficult to successfully deploy any model that uses one of these columns.
To solve this problem, create a separate metric, which is then used as an input for a predictive metric, that filters Revenue for each Payment Method. This has the same definition as the original Revenue metric, but its conditionality is set to filter Revenue by a particular Payment Type.
Prerequisite
This procedure assumes you are familiar with the process of creating metrics and filters. For steps on how to create metrics, see Advanced Metrics. For steps on how to create filters, see Advanced Filters: Filtering Data on Reports.

To create a conditional predictive metric

1Create a separate filter for each of the necessary attribute elements. For the example above, they are Payment Method = Visa, Payment Method = Amex, Payment Method = Check, and so on.
2For each metric, create a separate metric to be used as an input for a predictive metric, as explained in the section above.
3Add the filters you created as conditions of the metric-based predictive input metric. Save the metric. You can now include the metric in a training metric to create a predictive metric, as described in Creating a predictive model using MicroStrategy.
The following report uses conditional metrics to generate the same results as the first report but in a dataset report format.

Comments

Post a Comment

Popular posts from this blog

Reduce Intelligent Cube Size By Finding Intelligent Cube Objects Which Are Not In Use

Reduce Intelligent Cube Size By Finding Intelligent Cube Objects Which Are Not In Use If the i-cubes can potentially be reduced in size an audit can be performed on the cube objects to see which cube objects are not being used by any of the view reports, documents, or dossiers.   The below are examples for a few of the common metadata database platforms . NOTE: To perform this audit, queries are run against the MicroStrategy metadata database. Ensure a metadata backup is taken prior to performing the below actions. Steps: 1) Identify the object ID of the Intelligent cube to be audited by checking the objects Property window 2) Identify the object ID of the project this cube exists within by opening the Project Configuration Sample Cube ID =   CFAF1E9B4D53990698C42E87C7AF2EB5 Sample Project ID =  B7CA92F04B9FAE8D941C3E9B7E0CD754   3) Run the below SQL against the metadata database by replacing the Cube ID and Project ID within the respective ...

Activate MicroStrategy Geospatial Services

Activate MicroStrategy Geospatial Services MicroStrategy 10.11 introduces our new mapping capability: MicroStrategy Geospatial Services, powered by Mapbox. This enhanced map visualization is available for dossiers on all interfaces including MicroStrategy Desktop, Workstation, Web and Library (Mobile included). With MicroStrategy Geospatial Services, MicroStrategy now offers advanced geospatial analytics features that allow users to get more out of their location data. This new feature is available in addition to the out-of-the-box ESRI maps. MicroStrategy Geospatial Services allows users to: Plot polygon shapes for most countries, down to the zip code level Perform powerful interaction between layers (progressively hide or show data layers as zoom levels change) Identify and resolve location name conflicts Add thresholds to data points, size markers for metrics, and color by for both attributes and metrics Fine tune clustering behavior when aggregating data on a ma...

Conversion failed when converting the varchar value 'xxxx' Microstartegy

Error "Conversion failed  Error "Conversion failed when converting the varchar value 'xxxx' to data type int" happens when displaying Picture type attribute form using ApplySimple in expression against SQL Server 2012 in MicroStrategy  The attribute form is in Picture type and defined with the following ApplySimple function with Int type column [ID_BARANG] as the input parameter against SQL Server 2012.  Solutions is to use  Concat("Images/demo/s", [BARANG_ID_INT], ".png") ApplySimple("'images/demo/'&#0&'.png'", [ID_BARANG]) However, when running reports with attribute to show the picture form in Web, error message happens in both Web and Developer. Conversion failed when converting the varchar value 'images/demo/s' to data type int. STEPS TO REPRODUCE: SQL Server 2012 database should be used as the warehouse.  Create an attribute form as type Picture and us custom expressi...

Algorithm to calculate Logical Table Size in Microstrategy

How are the fact tables determined using the logical table size for SQL generation in MicroStrategy The logical table size is an integer number that represents the granularity or level of aggregation of a particular table. It is called 'logical' because it is not related to the physical size of the tables (number of rows). It is calculated according to the attribute IDs that are present in the table and their level in the system hierarchy.   Even though, the number does not reveal the actual number of rows in the table, it is an accurate way of measuring a table size without having to access its contents.   IMPORTANT:   The system hierarchy is defined by the parent-child relationships between attributes of the same family (formerly known as a dimension), not by user-defined hierarchies (i.e., drilling hierarchies).   MicroStrategy Engine utilizes an algorithm based on attribute keys to calculate the Logical Table Size (LTS): Given the following tables: ...

MicroStrategy URL API Parameters

MicroStrategy URL Structure The following table summarizes the root URL structure used for every request to MicroStrategy Web. Environment Main Application URL Administration URL J2EE http://webserver/MicroStrategy/servlet/mstrWeb http://webserver/MicroStrategy/servlet/mstrWebAdmin .NET http://webserver/MicroStrategy/asp/Main.aspx http://webserver/MicroStrategy/asp/Admin.aspx Every request sent to MicroStrategy Web calls a central controller. Parameters are appended to  Main.aspx  or  mstrWeb  (in a .NET and J2EE environment, respectively) to indicate to the controller how the request should be internally forwarded and handled. The following examples show a URL for accessing a MicroStrategy folder when the user does not have an existing session. The URL contains not only the parameters needed to connect to MicroStrategy Web, but also the parameters needed to log on and create a session. J2EE environment: <a href="http:...

Scheduling a report or document to be sent to an FTP in MSTR

Scheduling a report or document to be sent to an FTP server You can have a report or document automatically delivered to a location on your FTP server on a specific schedule. To do so, you must subscribe to the report or document, as described in the steps below. You can customize your subscription by typing macros in the  File Name ,  Sub-folder , or  Zip File Name  fields. These macros are automatically replaced with the appropriate text when the report or document is delivered. For example, you create a subscription to a document. If you type  {&Project}  in the  File Name field, the name of the project in which the document is saved is displayed in the name of the document when it is delivered. • This procedure assumes that an administrator has already added your FTP server as a new device in Developer. Steps to do so are included in the  System Administrator Help . To send a report or document to an FTP server on a schedule ...

Enable Incremental fetch in MSTR documents

Enable Incremental fetch in MSTR documents Incremental fetch divides large documents or layouts into pages, thereby loading the data in batches (or blocks) rather than all at the same time. This improves the usability and performance of a large document or layout, by reducing the load and overall memory usage on the web server. To apply incremental fetch to a document In MicroStrategy Web, open the document in the Document Editor. If the document contains multiple layouts, select the layout to apply incremental fetch to. From the  Tools  menu, choose  Document Properties . The Document Properties dialog box opens. On the left, under Layout Properties, select  Advanced . Select the  Enable Incremental Fetch  check box. From the  Fetch Level  drop-down list, select the object to be counted for the incremental fetch level. If the document or layout is grouped, the groups are displayed in the drop-down list. Groups that are displayed...

Microstrategy Removing sections that do not have metric data

Removing sections that do not have metric data This is an interesting feature which might not be explored by many of us and it comes us handy. A  cross join between datasets can result in rows or Group Header/Footer sections that do not have metric data. For example, a document contains two datasets. Dataset 1 contains Year and Revenue, with data for three years (2007-2009). Dataset 2 contains Year and Profit, filtered to return data for only two years (2008 and 2009). If you place Year and Profit in the Details and execute the document, it displays three rows, although no profit data exists for 2007. This is a product of the cross join between the two datasets. You do not want to see the blank line for 2007 since it does not give you any data for profit. You can select the  Trim sections for which no metric value data is available  check box. This removes the row for 2007, since no metric data for Profit is available for 2007. The results are shown below: ...

Create a transaction services photo uploader

Create a transaction services photo uploader   1.  Create a new table "photo_upload" in Tutorial warehouse database (the default location: C:\Program Files\MicroStrategy\Tutorial Reporting\TUTORIAL_DATA_7200.mdb), as shown below:    2. The 'photo_upload' table has to be pre-populated with *exactly* 10 rows of data, the values for the 'ID' column should be 1-10 and the values for the 'uploaded' column should all be 0 3.  In MicroStrategy Desktop, create a freeform report "R1" based on the new table "photo_upload" in Tutorial data created at step 1, as shown below:   SELECT Location, Description, ID, uploaded, numbers FROM PHOTO_UPLOAD 4.  Create another table for transaction insert SQL. Make sure to create an 'autonumber' type ID as primary key for this table, or auto_increment ID for different DBs.                     5. Create...