Вы можете попробовать привести значения как int
или float
, а затем преобразовать их в набор (все уникальные значения в итерируемом):
My_Factor_Levels = [9.0, 0, 6.0, '9', '6', 9, 6, 'DE', '3U', '9.0', '6Z', '6.0', '9.', '6.', '3B', '1U', '2Z', '68', '6B']
def safe_convert(x):
try:
return str(float(x))
except:
return x
coerced = set([safe_convert(x) for x in My_Factor_Levels])
>>> coerced
{'0.0', '1U', '2Z', '3B', '3U', '6.0', '68.0', '6B', '6Z', '9.0', 'DE'}
Если вы предпочитаете окончательный вариант coerced
результат, чтобы быть списком, просто сделайте list(set(...))
вместо.