Question

write a paragraph explain this function, and describe the specific technique of this function. This function...

write a paragraph explain this function, and describe the specific technique of this function. This function is in python 3.8.2.

def relevant(products, preferences):

relevant_list=[]

    for i in range(len(products)):

        check=True#check for item i dominating every other

        for j in range(len(products)):

            if products[i] != products[j]:

                dominatedCheck=False#check for i dominating j by being true in atleast 1 preference

                for k in preferences:#check between i and j, if any one condition is true, check is fulfilled

                    if k[1]==1:

                        dominatedCheck = dominatedCheck or products[i][k[0]]>products[j][k[0]]

                    else:

                        dominatedCheck = dominatedCheck or products[i][k[0]]

                check=True and dominatedCheck#if i dominated j in atleast one, this will stay true, else false

                if check==False:

                    break#skip as this is already false

        if check:#if i dominated all other items, add to selected

            relevant_list.append(products[i])

    return relevant_list    

***************************************************************************

This function is answer for:

Filters a product table for relevant products given user preferences.

    Input : A product table (products) and a list of preferences, where

            each preference is a pair (i, p) with i being the index of to a

            numeric column in products and p is either +1 or -1 depending

            on whether the user considers feature i to be positive or negative.

    Output: A new list of products that are relevant with respect to the

            preferences. A product is relevant if it is not dominated by another

            product, which is defined as follows:

            - prod1 dominates prod2 with respect to preference (i,p) if

              prod1[i] > prod2[i] in case p=1 (or prod1[i] < prod2[i] in case p=-1)

            - prod1 dominates prod2 if prod1 dominates prod2 with respect to at

              least one specified preference and not prod2 does not dominate prod2

              with respect to any specified preference

    For example:

    >>> phones = [['iPhone11', 'Apple', 6.1, 3110, 1280],

    ...           ['Galaxy S21', 'Samsung', 6.2, 3300, 1348],

    ...           ['Nova 5T', 'Huawei', 6.26, 3700, 497],

    ...           ['P30 Pro', 'Huawei', 6.4, 3500, 398],

    ...           ['R17 Pro', 'Oppo', 6.6, 3200, 457],

    ...           ['Pixel 3', 'Google', 6.3, 3800, 688]]

    >>> large_battery_but_cheap = [(3,1), (4,-1)]

    >>> relevant(phones, large_battery_but_cheap)

    [['Nova 5T', 'Huawei', 6.26, 3700, 497], ['P30 Pro', 'Huawei', 6.4, 3500, 398], ['Pixel 3', 'Google', 6.3, 3800, 688]]

    >>> big_screen = [(2,1)]

    >>> relevant(phones, big_screen)

    [['R17 Pro', 'Oppo', 6.6, 3200, 457]]

    >>> big_screen_but_cheap = [(2,1),(4,-1)]

    >>> relevant(phones, big_screen_but_cheap)

    [['P30 Pro', 'Huawei', 6.4, 3500, 398], ['R17 Pro', 'Oppo', 6.6, 3200, 457]]

    >>> big_screen_large_battery = [(2,1),(3,1)]

    >>> relevant(phones, big_screen_large_battery)

    [['P30 Pro', 'Huawei', 6.4, 3500, 398], ['R17 Pro', 'Oppo', 6.6, 3200, 457], ['Pixel 3', 'Google', 6.3, 3800, 688]]

******************************************************************************************************************************

Can you answer this ASAP?

0 0
Add a comment Improve this question Transcribed image text
Answer #1

The function used here is named relevant () function, and the arguments passed are prducts and preferrences. Then an empty list is created for the function. A loop is applied till the length of the list. Another loop for same and it's been checked whether the length(i) is equal or not to the length in j, for the product.

dominatedCheck=False, thi statement checks if   i dominating j by being true in atleast 1 preference.

The following is the pattern of input that this function takes.

A product table (products) and a list of preferences, where each preference is a pair (i, p) with i being the index of to a numeric column in products and p is either +1 or -1 depending on whether the user considers feature i to be positive or negative.

and the output pattern is a new list of products that are relevant with respect to the preferences.

A product is relevant if it is not dominated by another product is defined by dominatedCheck in the function.

and at the end it returns the relevant list.

Add a comment
Know the answer?
Add Answer to:
write a paragraph explain this function, and describe the specific technique of this function. This function...
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT