Это может быть один из способов использования последнего столбца X[-1]
в качестве сортировки key
import numpy as np
X=np.array([['few', {'age': 'young'}, {'salary': 'low'}, 0.8],
['few', {'salary': 'low'}, {'age': 'young'}, 0.3],
['few', {'age': 'young'}, {'salary': 'medium'}, 0],
['most', {'salary': 'high'}, {'education': 'upper'}, 1]])
X = np.array(sorted(X, key=lambda X: X[-1]) )
# array([['few', {'age': 'young'}, {'salary': 'medium'}, 0],
# ['few', {'salary': 'low'}, {'age': 'young'}, 0.3],
# ['few', {'age': 'young'}, {'salary': 'low'}, 0.8],
# ['most', {'salary': 'high'}, {'education': 'upper'}, 1]],
# dtype=object)
Другим вариантом может быть использование itemgetter
, где -1
означаетпоследняя запись / индекс
from operator import itemgetter
X = sorted(X, key=itemgetter(-1))