В общем, постараюсь пояснить ситуацию. К примеру, имеется код такой функции:
from scipy.stats import bartlett
def func1(*samples):
if bartlett(samples)<0.05:
return False
...
func1(sample1, sample2, sample3, sample4, ...)
...
В свою очередь, функция stats.bartlett() из пакета scipy, выглядит примерно следующим образом:
def bartlett(*args):
...
for a in args:
if np.asanyarray(a).size == 0:
return BartlettResult(np.nan, np.nan)
if np.asanyarray(a).ndim > 1:
raise ValueError('Samples must be one-dimensional.')
....
И стоит пояснить как именно работает данная функция
import scipy.stats as ss
In [8]:
data=[[2,2,2,2,2],[1,1,1,1,1],[3,3,3,3]]
ss.bartlett(*data)
Out[8]:
(nan, nan)
In [9]:
A=[10,7,20,14,14,12,10,23,17,20,14,13,11,17,21,11,16,14,17,17,19,21,7]
B=[1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,]
ss.bartlett(A, B)
Out[9]:
(47.7068477814218, 4.9495974630644599e-12)
Вопрос: как передать функции stats.bartlett(), необходимые элементы, так как используя *args, можно передавать элементы только прописывая каждый в отдельности, (A, B, ...). Я же не хочу так.
P.s. простите, уснул пока писал вопрос, и сначала опубликовал квакозябру, исправил