Похоже, самая окольная часть вашего решения - for-l oop. Я понимаю боль, поскольку у MATLAB также есть лаконичные способы доступа к элементам массива.
Похоже, вы можете сделать свое решение немного более лаконичным, заменив свой for-l oop чем-то вроде этого:
data = [ auto[i].mpg for i in indices]
где indices
- массив требуемых индексов для каждого автомобиля.
(см. Доступ к нескольким элементам списка, зная их индекс )
Но в зависимости от того, как вы настроили объект auto
, возможно, вы могли бы просто использовать
data = list(set(np.array(auto.mpg)))
, чтобы получить соответствующие значения mpg
.