Я строю рабочий процесс анализа для моей докторской степени и использую тройной вложенный список для представления своей структуры данных, потому что я хочу, чтобы она могла расширяться до произвольного объема данных на его втором и третьем уровнях.Первый уровень - это весь набор данных, второй уровень - это каждый субъект в наборе данных, а третий уровень - это строка для каждого показателя, который соответствует каждому субъекту.
[dataset]
|
[subject]
|
[measure1, measure2, measure3]
Я пытаюсь отобразить функцию для каждого показателя -например, преобразуйте все точки в числа с плавающей точкой или замените аномальные значения на None - и вы хотите вернуть весь набор данных в соответствии с его вложенностью, но мой текущий код:
for subject in dataset:
for measure in subject:
map(float, measure)
... результат правильный и именно то, чтоЯ хочу, но проблема в том, что я не могу думать, как эффективно присвоить результат обратно набору данных или без потери уровня гнезда.В идеале я хотел бы изменить меру * вместо , но я не могу думать, как это сделать.
Не могли бы вы предложить эффективный и питонический способ сделать это?Является ли тройной вложенный список глупым способом организации моих данных в программе?