scipy.stats.

obrientransform#

scipy.stats.obrientransform(*образцы)[источник]#

Вычислить преобразование О’Брайена на входных данных (любое количество массивов).

Используется для проверки однородности дисперсии перед запуском односторонней статистики. Каждый массив в *samples является одним уровнем фактора. Если f_oneway выполняется на преобразованных данных и обнаруживается значимым, дисперсии неравны. Согласно Максвеллу и Делейни [1], стр.112.

Параметры:
sample1, sample2, …array_like

Любое количество массивов.

Возвращает:
obrientransformndarray

Преобразованные данные для использования в ANOVA. Первое измерение результата соответствует последовательности преобразованных массивов. Если все заданные массивы одномерны и одинаковой длины, возвращаемое значение является двумерным массивом; в противном случае это одномерный массив типа object, где каждый элемент является ndarray.

Вызывает:
ValueError

Если среднее преобразованных данных не равно исходной дисперсии, это указывает на отсутствие сходимости в преобразовании О’Брайена.

Ссылки

[1]

S. E. Maxwell and H. D. Delaney, “Designing Experiments and Analyzing Data: A Model Comparison Perspective”, Wadsworth, 1990.

Примеры

Мы протестируем следующие наборы данных на различия в их дисперсии.

>>> x = [10, 11, 13, 9, 7, 12, 12, 9, 10]
>>> y = [13, 21, 5, 10, 8, 14, 10, 12, 7, 15]

Применить преобразование О'Брайена к данным.

>>> from scipy.stats import obrientransform
>>> tx, ty = obrientransform(x, y)

Используйте scipy.stats.f_oneway применить односторонний ANOVA-тест к преобразованным данным.

>>> from scipy.stats import f_oneway
>>> F, p = f_oneway(tx, ty)
>>> p
0.1314139477040335

Если мы требуем, чтобы p < 0.05 для значимости, мы не можем заключить, что дисперсии различны.