Bucket Data with Computed Attributes

With the new Computed Attributes feature you can use to create buckets defined by metric ranges. Use computed attributes when you have logical thresholds that you want to group an attribute by. When you include a computed attribute in a report, its buckets appear in that report. 

Computed attributes are dynamic. When you change the definition of a metric that a computed attribute is computed from, the buckets are recalculated according to the new metric (for example, if you are ranking sales representatives by quarterly revenue, then change the metric to rank them by monthly revenue). When you upload new data, that data is grouped into the buckets in the computed attribute.

Computed attributes appear in the Attributes menu, and you can use and manage them like other attributes.

When you create a computed attribute, a data set for that computed attribute is also created. To delete a computed attribute you must delete its data set under Manage > Data Sets > [dataset name]. Deleting the data set also deletes its associated computed attribute.

Limitations:

  • Computed attributes do not appear and cannot be managed in CloudConnect data models.
  • You cannot transfer computed attributes to other projects. (Computed attributes can not be migrated).
  • For the Beta release, you cannot change bucket ranges. This capability will be added in the general release.

Example: You set up these buckets for a computed attribute and name it Computed colors:

CA_buckets.png

Steps:

  1. Log in to the GoodData Portal and go to Manage > Attributes, click Create Computed Attribute.

  2. Follow the steps on Computed Attribute screen. In the Set up buckets step, define your buckets and their threshold values.

  3. Name the attribute and click Create Computed Attribute.

    The attribute is created and the Attribute Details page appears. You can manage this computed attribute like other attributes, including adding it to reports.

Updates

Sai Kiu Ho

This is pretty awesome.  One question.... how does it handle negative ranges?

Cindy Au

Hi Sai,

If you have negative numbers, you can just include them in the buckets. For example, small can be up to -5 and medium can be up to 0. 

Sai Kiu Ho

Hi Cindy,

Thanks for the quick response.  I think I figured it out.  Took a little bit of testing.  Essentially the statement "Up to" means >= so you just have to start from the top.

Using the example above (assuming all numbers are now in negative, of course)...

Green up to -5000

Orange up to -1000

Red more than -1000

Permanently deleted user

Is this still in beta, or has it moved to general release?

Michelle M

Hi Gustavs, this is still a beta feature and the release date is not yet decided. We will update this information when it goes GA. Hope that helps.

Beau Redstone

Hey guys - This feature is awesome, but we're finding there are limitations for Powered By customers like us, because there is no way to propagate a computed attribute to children projects. We've tried several techniques (importing via cloud connect.. doesn't work; partial md import/export of data set.. doesn't work; replicating the computed attribute in a child project and copying dashboards.. doesn't work).

I made a comment here as well. Not sure which of these comments is closer to the product guys though.

Basically what I'd like to know if whether or not the capability to propagate computed attributes via normal methods (primarily cloud connect) to child projects is something you guys are considering.

 

Amber van Hecke

How do I go about bucketing an attribute for use in a filter?

For example, let's say I have an attribute called 'site' with 4 different values. The values are: 

www.purple1.com ---  www.purpleXX.com ---  www.blue1.com ---  www.blueXX.com

I wish I had the ability to create a new attribute called 'Product_Site' that would have two values, 'Purple' and 'Blue' based on the values in the 'site' attribute.

This way I could create a dashboard that had a chart that contained all sites, but I could use the 'Product_Site' filter to only shows sites regarding certain products.

The calculated attribute feature, I don't believe would allow me to do this, because you can only bucket by numerical values (it's based off of a metric). 

And the other method of creating two separate metrics and having those sites filtered within the metric wouldn't work, because I can't create a dashboard filter for metrics.

Please help me determine a way to group attribute values so that they can be filtered upon. Think of it like this, if I am looking at this dashboard and I support product Purple, I want a way to filter the dashboard so that I only see product purple. I don't want to have to manually filter for the million sites that may roll into product purple.

I imagine this comes up frequently when people want to filter on Europe instead of having to filter for all european countries.

Nicholas Pegan

Hi Amber,

Thank you for the explanation. Both the product/website and geographical bucketing are great examples. The feature that you described is on our product roadmap as an enhancement to the underlying analytical engine in our platform and then in the UI. Specifically, the functionality we plan to support is the ability for you to designate attribute buckets and then map one or many attribute values to these buckets for use in a visualization, report filter, or dashboard filter.

I do not have a delivery date, but we will follow up when it has been set. Currently, you would solve this by adding a new attribute to the project model and mapping the data in the ETL before it is loaded to your GoodData project. Please let me know if you have other questions or want more clarification.

Amber van Hecke

Is there any update on this? This is still a much needed feature. (Please see my comment above) Thanks

Nicholas Pegan

Hi Amber, Later this quarter we are planning to release a "LIKE" function in MAQL which would allow you to create a measure filtered by a substring match. In your initial example you could create a measure called 'Purple' that aggregates a fact value for all records which contain the substring "purple" for a particular attribute value. You would then create a second measure for Blue and add them to the same visualization to satisfy this use case. Thanks, Nick
Powered by Zendesk