Найти - Пользователи
Полная версия: переформирование массива
Начало » Python для новичков » переформирование массива
1
lembolovo9
Всем привет, делаю типовые расчеты по математической статистике. Да, сказали сделать именно на питоне.
Ситуация такая: Была выборка из 200 чисел, я разбил по условию на 12 интервалов. Теперь есть словарь, ключи - середины интервалов, значения - количество чисел из выборки, попавших в этот интервал. Функции распределения, дисперсию итд я уже построил. Сейчас мне нужно проверить критерий Пирсона, для него в методичке требуют, чтобы в каждоминтервале было минимум 6-8 чисел, а те промежутки, в которых чисел меньше - объединить с соседним. Вопрос, как это реализовать?
Понимаю, что задача не очень сложная, просто охота именно некриворукий вариант услышать.
vic57
например
 >>> l = [[1,1],[2,2],[3,3,3],[4,4,4,4]]
>>> out = [l.pop(0)]
>>> while l:
	t = l.pop(0)
	if len(out[-1]) < 4:
		out[-1] += t
	else:
		out.append(t)
		
>>> out
[[1, 1, 2, 2], [3, 3, 3, 4, 4, 4, 4]]
>>> 
можно еще скорректировать для последнего значения при выходе из цикла
 >>> out = [[1,1,1,1],[2,2,2,2],[3,3]]
>>> if len(out[-1]) < 4:
	t = out.pop()
	out[-1] += t
>>> out
[[1, 1, 1, 1], [2, 2, 2, 2, 3, 3]]
>>> 
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB