In this segment, the objective is to sort our customers based on their LTVs. We can use this knowledge to provide premium membership or special discounts to those customers who have very high LTVs.
So, in the forthcoming video, you will learn how to write the Python logic for the same.
Recall that in earlier modules, you had learned about three main sorting algorithms: selection sort, merge sort, and insertion sort. For our case, we will be teaching you a new sorting technique: bubble sort.
Let us go ahead and listen to Favio in the forthcoming video.
So, in the video, you learned about bubble sort and how to create a simple Python function for performing a bubble sort.
So, with the function that we have created, we can now sort any number of values on a given list in ascending or descending order. Let us consider sorting these LTVs as an example:
my_sort([3000, 4500, 3200, 5000, 3500])
Upon sorting, we will get this output: [5000, 4500, 3500, 3200, 3000].
Nevertheless, this does not help us as our objective is to find the customer IDs corresponding to these LTVs. Hence, we need to create a logic with which we can deal with both customer IDs and corresponding LTVs.
To implement this logic, Favio will make use of the dictionary data structure, where the data will be in this form:
{‘Customer1’: 3000, ‘Customer2’: 4500, ‘Customer3’: 3200, ‘Customer4’: 5000, ‘Customer5’: 3500}
Given this dictionary, we should be able to sort as shown below:
‘Customer4’: 5000, ‘Customer2’: 4500, ‘Customer5’:3500, ‘Customer3’: 3200, ‘Customer1’: 3000
In this way, we know that Customer4 has the highest LTV, whereas Customer1 has the lowest LTV.
So, how do we implement our bubble sort function, which we created above, so that we can apply it on this dictionary? Favio will help you understand this in the next video.
So, in the video, Favio created a my_sort_dict function, with which he was able to apply a bubble sort on the dictionary structure. Moving on, in the next video, we will see how we can apply this function on our actual LTV extracted directly from the dataframe. Let us go ahead and watch the video.
So, as you saw in the video, we were able to sort all the customer LTVs in decreasing order. With this new information, we can consider providing such customers with offers or maybe a loyalty card of some sort as we want to retain them for as long as possible.
Moving on, in the next segment, we will try to write another logic for tagging the customers as having high and low LTVs; later, we will create a class where we can save all the functions that we have created in Python.