Examples of how to get unique values in a list in python:
Create a list in python
Let's first create a list with unique values:
mylist1 = ['a', 'b', 'c', 'd']
and then create another bigger list using those unique values:
import random
mylist2 = [random.choice(mylist1) for i in range(20)]
mylist2
gives for example:
['d',
'c',
'd',
'd',
'b',
'd',
'a',
'b',
'b',
'd',
'a',
'b',
'a',
'b',
'a',
'd',
'b',
'd',
'a',
'b']
Goal: get unique values from mylist2.
Get unique values in a list
There are several solutions to do that.
Convert the list into a set
A straightforward solution is to convert the list into a set (see Data Structures):
mylist2 = set(mylist2)
and to convert again into a list
mylist2 = list(mylist2)
print(mylist2)
gives
['d', 'a', 'b', 'c']
Note: to sort the list:
mylist2.sort()
print(mylist2)
gives then
['a', 'b', 'c', 'd']
Convert the list into a matrix
Another solution is to convert into a matrix
import numpy as np
mylist2 = np.array(mylist2)
since numpy as the function unique()
mylist2 = np.unique(mylist2)
and convert again into a list
mylist2 = list(mylist2)
mylist2
gives
['a', 'b', 'c', 'd']
Iterate over each value with a for loop
Another solution is to simply iterate over each value with a for loop
mylist3 = []
for i in mylist2:
if i not in mylist3:
mylist3.append(i)
mylist2 = mylist3
mylist2.sort()
print(mylist2)
gives
['a', 'b', 'c', 'd']