We're going to review some of the most common types of Data Apps.
We'll start by looking at filtered reports and analyses or as they're more commonly known dashboards.
Then we're gonna go through and we're gonna look at tables, how to create list box filters so people can filter by something like demographics, visualizations, and then we're going to move on to searching through text data to create filters.
We're then going to move into a bit more detail about how to create bespoke data apps.
We're going to look at a very simple example which is an interest rate calculator so you'll all understand the basic concepts of it but we'll introduce custom calculations, custom controls, a new feature called a calculation grid, and we're gonna look at how you personalize something so that different users get a different experience.
Then we'll do a more advanced custom calculation to work out reach, kind of turf type analysis and this will introduce how you can go about hooking up calculations to variables and variable sets that is to the raw data.
Then we'll move on to how you can hook up predictive models to create data apps, so users can work out what segment people in for example and lastly simulations in particular conjoint optimizers and simulators and we'll introduce another new feature quite exciting one I think which is just the ability for users to save scenarios or views.
Some of you have seen this example before it relates to travelers concerns when holiday.
We've got a question which asked people what concerns they had when visiting different destinations. And the sample here is of people from North America, and so forty four percent of them were concerned about cost on a trip to Egypt compared to fifty two percent for China and only nine percent for Mexico, which is obviously a lot cheaper to get to from North America.
So this is a good old table. If we want to create some functionality so a user can filter it to look at it by different subgroups. That'll be the simplest basic kind of data app we can build and we click on the table. So click on the table and on the right hand side we just can choose from these options to create filters. I'm gonna choose a list box filter gender and age.
And now they appear on my page.
I'll resize them a little to make them a little bit neater and move them down a bit.
And so this is instead the simplest kind of data app if we want to show the data for just males we uncheck the female box.
Now usually when you build a data up you want it to look a little better and there's a few steps to this. One is replace the table with a visualisation And for this, my favorite visualization is the palm trees visualization.
The reason I like the palm tree visualization is it's really good at summarizing data from a big grid, but to make it a bit more readable, let's get some of these font sizes a little bit bigger.
And we'll do the y axis to add a little title in as well.
Now if you haven't seen a palm trees visualization before actually, maybe let me just tweak the font size a little more here.
The way we read it is the size of each palm tree tells us about the and size I should say the height tells us the average of all of the metrics we're looking at here. And so it's telling us that people have the most concerns about Egypt and China, which is why they're the highest of these ones here.
The shape of the palm trees that is the fronds tells us about the patterns in the data. And so if you look at Australia and Great Britain, we can see that the patterns are basically the same. And if we hover over them, we see that the only real concern that North Americans have about Australia is cost, And we can see that the shape is the same for Great Britain, and therefore it is the same basic concern.
Whereas when we go up here for Egypt, they're concerned about just about everything except for boredom.
Okay. So this is starting to look a bit better. We can really make this look quite a lot nicer by inserting a nice image in the background, and this one was created by my internal design team.
But they found it on a website. Someone just tweak a little bit. I'll send it to the back.
I'd arrange my little palm trees so they appear on my island.
So now we've got a simple but I think pretty cool data app. We can see that with a blue background it's a bit hard to see the contrast for the unselected group And so I'll just change their font colors to white, and now they're more visible.
Now we can do a separate example. Now if you've seen one of our text analysis webinars before, you've seen this data before, but we're gonna use it in a data app. Now some years ago, Tom Cruise wasn't very popular, particularly in Australia.
We asked people why didn't they actually like him? And we've got the answers from that survey here. So I will drag across the data.
Why did they just why they dislike Tom Cruise?
And we have the raw answers here and we've got quite a lot of responses such almost three hundred of them.
So we take a lot of time to read through all of those. We want to make our life a little bit easier for our stakeholders.
We could put filters like demographics on or we could give them the ability to search through and find certain words that appear and that's what we're gonna do. So again, it's the same principle I showed you before. I click on the table that I wanna filter. I'm gonna go over here. I'm gonna choose text box filters. Then I can choose any variable that contains text, and we're gonna reuse why do they dislike Tom Cruise.
And let's just make a bit more space here. And it's very hard to see this guy up here, but what he actually is and I'll make him give give him a little bit of a clearer background so it's a bit more visible.
Black on black is always hard to see. So this is a little text box I've got up here where I'll control where you can enter stuff.
And, again, I'm gonna make it white.
Hold on. I'd select all the text. Try that one more time.
Right. And what I'm also gonna do is I'll do a word cloud to make this a little bit prettier.
So just duplicate that table, which is automatically hooked up to that search box that we just created.
And I'm just gonna switch the table into being a word cloud.
Okay. And so now I've got something in the user can simply filter things. So you look here and you say, okay. A lot of people have said weird. What what did that mean by weird? Let's look at their data.
I type weird and the word cloud updates to show weird.
And I can see all the original responses that people gave when they mentioned weird. So another simple data app.
We're now gonna do something a lot simpler in terms of the analysis, really, which is we're just gonna calculate some compound interest rates, which hopefully you recall from school. If not, we'll quickly go through it. But we're gonna dig into the detail of how you actually build a custom app now.
So the first thing we do is we're gonna put some little date controls on. Now on the previous pages, when I've been adding filters I've just been clicking little shortcut buttons and it's been hooking it up to the data and doing everything for me, but we can do more bespoke things if we take over and do things step by step. So I'm gonna choose a date control.
Let's just zoom in a little so it's a bit easy to see.
So put my date control here. Now as the date control, it means I can select things like dates. That's what a date control is. Having created one, I'm gonna duplicate it.
And then I'll move it down to be here.
And maybe we'll change the first date to make a little more interesting to twenty twenty one.
Okay. Now when we calculate interest rate, we need to know how many years we have to calculate the interest rate for.
And so we're gonna put a calculation.
So calculation, I can click on this little equals button, and then you see, like, little crosshairs, and I can draw where I want my calculation to appear.
And I'm gonna say I just wanna take date two, and so I click on the name of this second date control, which is date two, minus day one.
And I can click calculate, and it tells me the difference is twelve hundred and fifty five days.
Now to turn into years, I'm just gonna do what you do in Excel or any other language, really.
Surround that all divided by three sixty sixty five point two five.
Click calculate again.
So now it says three point four days. Why is it saying days?
Well, we've used this little formula, but the app's not quite smart enough to know that the reason we divided by three five is because we're trying to calculate a year.
So what we're gonna do is we're gonna tell it to only give us the numbers and ignore everything else. This little function we call as. Numeric. You'll see we're going to use this again. It's a fairly common one that comes up.
Okay, three point four years.
Now we're gonna assume that it's a kind of mean bank and it's only gonna pay every year. So we need to round this down. Now one of the cool things about display is all the calculations are done using a very powerful data language called R. But if you don't know how are you gonna work it out around down?
Well, the easiest way is to ask chat g p t and you go, how do I round down in a?
ChatGPT has made using a so much easier. You don't have to remember anything. That tells us we just need to use the floor function. Cool. Easy peasy. Let's go back. I can do it.
Good. Good. So it's surrounded by floor.
And now it's given us the correct number, which is three. To avoid any confusion, we'll get rid of our decimal places.
Oops.
Now we need to have our opening balance, So another type of control, which is a text box control.
And we'll type in the value of a hundred.
We have to do our interest rate, and we can just duplicate the control we've already created.
It's gonna be another place where we enter text.
Five percent to make it a little more transparent.
Put a little percentage sign to the right of it. So now we're gonna do a simple calculation to use all of this to calculate what the closing balance will be. We're gonna start by converting the interest rate from a whole number five into a proportion.
So, again, we create a calculation.
And again, I just click on the box and I'm gonna go divided by one hundred.
I'm gonna get an error when I click calculate.
And the reason I'm getting here, I've kind of touched on already in a slightly different way. So it's just saying to be non binary numeric argument. What does that mean? Well, it's an ugly way of saying that a text box is permitted to have text or numbers.
Right? Now when you write code like this or calculation like this because you're building a data app, you want that data app to work even in situations where users have done weird things. And so we don't have a guarantee user's gonna put a number in here. They could have put text.
So I'm actually gonna tell it that I just wanna take the numeric bit of anything they type in case.
So as numeric. So it's the same thing I really showed you before.
And when I do that, I will get a nice proper number.
Let's put another decimal place on it.
Okay. So it's point o five. Now some of you remember the way you do compound interest is you do one plus the proportion and then to the power of. So it's the same as Excel. You use that kind of little hat symbol, it's technically called. And we're gonna go over the number of years, which is up here, which we calculated before.
And then we're gonna have to times it by our opening balance, which we're also gonna have to make numeric because it's a text box.
And now we have a little formula which will automatically compute the closing balance when any of these inputs in our data app change. Now we can improve this a little bit more because if you look at it, it's this text box, calc one text box, which is a little hard to check. So what we're gonna do is we're gonna name each of these things. Just like for those more advanced Excel users, you can name any particular thing in Excel. Someone change calc one to years.
Going to make the opening balance. Just call balance.
And the interest rate, I'll refer to as rate. I might call interest. That might be a bit easier. And you'll see then that the formula has been automatically updated, and so it's now much much more readable.
The brand new functionality that we've just added in and we're still doing the beta testing of. So if you want to use this, please join our beta testing program. Just contact support at display air dot com, and I'll put you into the beta version. I'll give you the preview.
It's hopefully gonna be released in the next week or two. Let me maximize my screen to make things a little more readable. I'm going to now go calculation. Before, we've been clicking on that to add them.
This little menu here, click a calculation grid, and I can draw a grid however big I want. I'm just gonna do a really simple one to illustrate the basic functionality here. So the box at the top, I wanna type some texts. So I'm just gonna surround it by quotation marks.
In the row labels, I'm actually gonna type years. So we look at one year, two years.
At the top here, I'll type closing balance.
And then I'll go and get this little formula that we had before.
And I'm gonna click into that cell. Now it's currently due by years. I'm gonna make it just show one, and I could have linked it to the the cell on the left as well if I wanted to.
To the second one, I'm saying two.
Okay.
So now I've got a nice little table showing me the different values.
Now with all of these things hooked up, we can change inputs, and we'll see the table update, and we'll see the value here update automatically based on the input. So we'll build a very, very simple data app. Now a common question that we get is, how do I build a data app so that it can be used by different users and have their data shown in that data app, that is to have it personalized.
And there are two bits to doing this. The first bit is that you need to when you set up your app, you need to add in the users, you give them email addresses, account login details, passwords, and that kind of stuff, so that they can log in and see your app. And when you do that, you put them into a user group. And when you create a user group, that allows you to do the second step, which is to refer to the user group explicitly in your calculations.
Now the way you do that is we click the little equals again to create another calculation.
We have to have this little bit of code.
We type on the name of it, which is just called q view mode user groups. Now as the name suggests, view mode user groups, this is when somebody is in view mode.
Now we're currently in what's called edit mode and edit mode is when the user is creating, and that's you, building your data app. View mode is when you're sharing that data app so someone else can view and play with it. Now it's only when the view user has logged in in view mode that you actually know what their user group is. So we just get a null saying we don't know because nobody's logged in in view mode yet.
So we're gonna have to deal with that in our code. Now what I want to happen is I'm gonna want it so that rather than users enter a closing balance or an opening balance, instead we go down and we look in their table based on which user group they're in, what their balance is, and we insert that in insert that here, which will personalize the calculation. So to do it, I'm going to delete this opening balance because we're just going to use the actual opening balances.
Notice that we get lots of errors everywhere now because all of those calculations depended on the opening balance, and so they're now broken.
I insert a calculation, and the calculation you can do here is not the most complicated. But for those of you that have never written long formulas in my field, I'm gonna say if my user group thing is null, I'm just gonna put in a balance of one hundred otherwise else I'm going to take my little table down here and look up in that table square brackets means find in the table whatever the customer's number is or customers user group I should say is.
Okay so because our user group here is null it's just gonna show me my opening balance of null. Now the next thing I want to do is I want to hook up all of my other calculations to this opening balance here because this opening balance is currently called calc nine and you remember before we had opening balance was just called balance.
What I can do is I can rename this as balance and then it says do I want to update all my calculations and I do and I click that change name button And now it just redoes all of my formulas again so they're all correctly hooked up to this.
So it saves me a heap of time.
So now to share this, I'm gonna go publish as a web page.
And so we're saying that they need to have a login and password here if they're gonna view this data app because otherwise we'll have no way of knowing who they are and we can't personalize.
I click publish.
It's It's open in a new tab.
Now this is going to be logged in as me which we don't want. What we instead want is we want to be logged in and so as a user with a different username and therefore a different user group. And so what I've done here is I've done that in a different browser incognito browser where I'm logged in as the member of the Johnson family. And so you can see here it's now showing the customers the Johnson family who's got their opening balance of five hundred and we can see all of the numbers updated and so now they've got a tool they can use personalized to them to get their own special data app.
Now we're gonna move on to look at a different way of creating a data app. And this is a real life one. It's very useful to create market research if you're doing a turf type analysis.
And I've got a whole webinar on turf if you need to know more about what that involves and includes creating this, but you'll see that we've made this even easier to create than it used to be.
So how are we gonna do it?
Go to the bubblegum reach calculator.
Now I've got a dataset here where we've asked people about what bubblegums they like. So let's look at the raw data to get a bit more familiar with it. So each person in my data set is represented by a row in my raw data and we can see that the very first person they've got a one for classic bubblegum meaning they like it they like grape, sour and orange and cola.
So that's how the data is structured.
Now we're gonna create a calculator which allows us to work out for different combinations of flavors what proportion of people like one or more of the flavours. This is called reach. This is the thing as I said before that you do in turf studies.
Now as before we're gonna put a little custom component on the table control on the table.
So we go to page design control and we're gonna choose good old list box again, which is a list of items. Now you'll see here that it's showing first option, second option. So you can just type stuff in and customize it, but what I'm gonna instead do is I'm gonna hook it up to this data we have here on the flavors, and they'll just automatically populate it with the variable labels.
Now the next thing we need to do is we need to extract the raw data just for the selected flavors. Now at the moment, the list box is only allowing me select one thing at once. I'm gonna make a multiple select, and I'm gonna zoom in a little bit. So this code's a bit easier to read.
So what I'm gonna do is I'm going to click the calculate button again, and I'm gonna tell it that I want to.
Now when I refer to data, I don't have to type it in. Just click on the data, and it's just gonna add it there. As I explained when you before, before, when we want to look at a part of the data, we do these square brackets, which is called subscripting.
It's a very efficient way. Now I could say something like this would tell me I wanna take the first ten rows and all the columns. If I do this, because rows come first, it means all the rows, and I could just specify the columns and I could type them in or I could just click on my list box which I do and if we could calculate you'll see it's now giving me all of the data for the selected brands here.
Now I'm not gonna explain why this math works but this is the math of how you calculate the reach. The first thing you do is you calculate for each row the maximum score that is that tells you if people liked at least one of the flavors.
And so I'll do that. Create another calculation.
Now a cool thing I can go max and when I do that it previews all of the different things that I might wanna choose from so I'm gonna max each row and just click on this calculation up here, click calculate.
And so it's now giving me the maximum for each row. I'm gonna edit it again and I'm just gonna take the average of these. So it's very simple code, isn't it?
The average is zero point eight. Let's multiply that by a hundred.
So it's our reach.
Let's put a percentage sign on the back of it.
Let's move it over here to the right.
Now we, of course, want our data app to look a little bit cooler, but it's already quite functional.
So what I'm gonna do is I'm gonna turn this one. Oops. So I opened the object inspector back. I'm gonna turn that into a Venn diagram, which is the best way to kinda show rich data, I think.
So we can see here it's just showing orange and gray, but they're roughly the same size. If we look at kind of a more traditional kind of range of hubba bubba in a lot of countries.
Cool. So we can see the classic bubblegum is more preferred than the collar.
Now we're gonna make it look super pretty putting in another image visualization.
Another image visualization putting in another image that we've got, which is a girl green power. Now this was again designed by one of our internal designers.
One thing I've started playing with recently though is rather than using internal designers for things, and these are already done, I'm now using various modern AI or generative AI tools like MidJourney and DALL E two. And the actual Tom Cruise one I showed you before was created by one of them, and it took about ten seconds to create, which is kinda cool. Anyway so here we've got a cool little reach calculator.
And we can play around and they appear as nice little bubbles.
So I like this one very much.
Now we're gonna move on to segment typing. This is probably the most common type of data app we get asked about in the support team.
The way these work is you've got maybe a segmentation or something you're trying to predict. Now in this study here I've got segment where I've done a cluster analysis, group people into various segments. And you wanna create what's something called a typing tool where you predict what segment they're in. And you could either do it predict on the questions in the survey or some general profiling questions.
I'm gonna do that second type here. So and if I don't know how to do it, right, and type the name in machine learning. Let's do some machine learning and display will show us where the options are. Okay, here's machine learning.
I'm gonna choose whoops.
I'm gonna choose the go to safest easiest model of all, which is a random forest.
And I'm gonna predict now the segment, and I'll predict it based on how they ordered monthly span, age, gender, income. I'll drag them across as predictors. Now my goal here isn't to at all describe how to build predictive models or to even evaluate this. It's just how to turn it into a data wrap, and it's very simple. It's nice little shortcut button over here. And so I'm just gonna choose create simulator.
And it's thinking away. It's added new page. Cool. Let's zoom in a little bit.
And so you can see here for it's put an person in. So they do drive through. They spend two dollars a month, eight inches to twenty nine mile low. And we can see that they're predicted to be in the pure convenience group, and we can see here the probability.
So they could have also been the innovation group, but pure convenience was the clear winner. And we can change things. So we can say, well, let's make this somebody who rather than drive through, they wanna have delivery, and they spend about two hundred dollars per month. And they're an older female, and income is high, and their interest in innovation.
The probability is a little more marginal here. So innovation is the winning segment for them, but it's a bit more liable. So we've very quickly built a data app which allows people to do segment typing. You can also do the same thing for scoring, which is really when you have a outcome measure that you're predicting, which is numeric, such as average amount spent or NPS or something like that.
Exactly the same workflow.
Now we move on to simulations, and particularly, we're gonna look at conjoint simulations, optimizers, and choice simulators.
Now I've got a separate document that I preset up with this, which has got in it a big hierarchical base model from a conjoint study. Now once you've set your hierarchical base up in display and we've got a series of four webinars which talk about how to do this kind of work. You then need to open it up and click on it, which can take a little while to load up as I just done in there as it's got a whole lot of work to do.
Cool. And then we go down. And again we've set it up so you can choose an optimizer or simulator. I'm gonna show you the optimizer first.
I'm just gonna have two alternatives.
And, again, the logic and the process for creating these is described in the other webinar.
Alright. Let's just tweak some of these font sizes a bit to make it a little easier to read.
Okay. Now in this particular study, what we did is we asked people about where they'd like to work, and we gave them trade offs in terms of their salary, the carbon neutrality of their employer, the quality of the software they used, and where they had to work from. Now at the moment, alternative one and alternative two are identical. So needless to say, people are in different fifty percent should prefer alternative one, fifty percent should prefer alternative two.
But what happens if we wanna explore all of the different salary ranges and what impact they do? Select them.
And let's also look at all the different work locations, select them. So there's now sixteen combinations of salary and work location.
And what the optimizer does is it runs all of those simulations and shows them as a table and we'll just sort them from highest to lowest.
We can see here that not surprisingly, people like the highest of the salaries we test, which is twenty percent. And a little more interestingly, they wanted that to be hooked up with coming to the office for key meetings.
So that's what optimizer is. A simulator is the same idea, but you only let people choose one of the things, so you're simulating a particular scenario. Now you can build a simulator by clicking the button just as I showed you before, and you can tie it up to make it look pretty. And here's one that I have indeed tied it up to make it pretty. So we've got the two offers, and this is how you would use a simulator in practice. You might go, okay, job offer one is our current thing. We wanna force everybody back into the office because we think we'll get more productivity.
So they gotta come to the office every day. What will the reaction be of our workforce? Well, thirty four percent would prefer this second job. Sixty six percent prefer the first one. So we're probably gonna make people pretty unhappy if we force them to come to the office.
So you might go, well, it's good for the company. Maybe we should pay people more to reward them for coming to the offices every day. And for those of you who are employers, I appreciate you might not think this is for that rational, but it's a useful way to think about the problem, certainly from an employee point of view. So let's go.
What about if we have a five percent higher salary and still people are vastly preferring job offer one, which is fully remote? Okay. Ten percent higher. No.
Fifteen percent higher. So at fifteen percent higher, we're finding they were back to kind of parity between them. And so the way we read that is, on average, the value of getting to be fully remote versus working office every day is equivalent to a fifteen percent pay rise. So it's a pretty powerful thing.
This is again real data from a study we did in North America late last year. Now we have done this scenario and we could call this scenario because we're gonna save it. This is a new feature I promise. We'll call it forced return to office with fifteen percent pay rise.
We should also create this scenario of just forced return with no pay rise.
Now because we've created these little scenarios in the views menu, we can then toggle between them really easily, and we can set them up for our colleagues or our colleagues can create them for us. And so it's a great way again of sharing results in the data wrap and saving a bit of time. Now if you use this feature and it came live today, when you're publishing something, you need to actually go and I'll go and show you the publication process again. You would go publish publishers web pages. You need to expand at this and add this functionality for viewers can add, change, and delete, and apply views, which is what I was just showing you.
So we have looked at how you can create data apps where users can filter data using categorical variables like demographics and also searching through text.
We've also looked at the basics of creating a data app, particularly introduced the calculation grid and personalization.
We've created our reach calculator, which looked at how you bring raw data into a data app. We looked at how we can hook up a data app to a segment scoring model and the same thing in terms of how we create simulations by hooking up data apps for creating data apps from conjoint studies and that nice new functionality for saving scenarios.
Later this week, probably later today, we'll send you a recording of this webinar.
What questions have you got for me? If you have any questions, please type them into the questions field in the GoToWebinar app.
Question number one from Leo is, hi. What was the email address to request for a beta version?
The email address is supportdesplier dot com. And if you're in the app, you get there automatically, but contact support, it's what you can do it that way.
But if you're not in the app support at just gotta learn to spell it, display dot com. No. There's no e here. We couldn't afford that e. Just play it with an r.
Juan asks, I love the way that you've got the r functionality in here. Can we load specific packages up? Yes. You can. We've got about eight hundred r packages already loaded up in here. And so it's very likely the one you want is here, but if not tell us and we will check it out and load it up provided it's not got some security hole or problem with it.
And now I have another question for the interest rate calculation. Can the number of years be changed to more than three years? Yeah. Sorry.
I've done a terrible job at explaining this. Thank you for asking that. Yeah. So the usage just puts new dates in, and everything automatically updates automatically.
Now it didn't affect this one here because this was only showing one or two, but you'll see the number here changed.
So if we go four yeah, so here, I've now changed it. So they're all the same year, so we actually get no gain at all.
And that was all of the questions we had. Thank you very much for joining this webinar. And for those who are customers out there, thank you so much for being our customers.
Bye now. Got a quick question. Marian said, can you force the to date to be after the from date?
You can if you want make them inconsistent, and then you would program a little error onto the screen. So you could do some so let's say the user did something like this.
Oops.
I still didn't get it quite right.
We were gonna get a negative time or something which could break it. So it's gonna allow us to do it.
But the way you would handle that is you would put another calculation and just go if date two is less than First date, please set a value of date, a value of two that is higher than from else show nothing.
So crazy little calculation here, and I'm gonna put it underneath here and so the user can't miss it. We will make it bright red.
Okay, so there's an error message and once the user fixes the problem their message disappears. So we can do our own kind of validation.
Deepak. Deepak says, how can we activate filter in PowerPoint version?
Well the if you export one of these to PowerPoint they will come through as text boxes showing you what is the what is there but there's still a way you can do it.
PowerPoint has now I don't actually have the latest version of PowerPoint on my machine.
So I'm not going to show it to you, but PowerPoint has a feature now where you can embed web pages. Now anything that you've created in Displayr can actually be embedded in a web page. So the view mode that I was showing you before, you can copy this and you can it is a web page and then you can put it on the embedded web page which will give you all of that functionality in PowerPoint.