2017-02-23 5 views
1

Can a variable number of arguments be passed to a function? の会話を続けて、Python 2.7で関数の引数の乱数を生成する方法を学びたいと思います。特にPython関数のリストの未知数の生成

は、様々なカテゴリをループしながら、私は array_like の未知数を渡したい(またはリスト S?)scipy.stats.f_onewayします。作品

A簡単な例は次のようになります。これは

F_onewayResult(statistic=12.15815414713931, pvalue=0.0082363437299719927) 

を得た作品

list_male = [34.316349, 34.32932, 34.27, 34.33905, 34.328951] 
list_female = [34.61984, 34.34275, 34.6389, 34.44709, 34.51833] 
f_oneway(list_male, list_female) 

私は私のカテゴリgenderは、2つのクラスだけmalefemaleを持っていることを知っていたので。

しかし、多くのカテゴリのループを実行していて、特定のリストを事前に設定したくない場合はどうすればよいですか?たとえば、pd.DataFrameのカテゴリ列animalに未知数のクラスが含まれているとします。私はループの中でdf['animal'].unique().tolist()のようなことをしたいと思って、f_onewayにフィードするarray_like(または必要なもの)を作成します。

+1

'f_oneway(* a_list_of_lists)'は動作しますか? 'a_list_of_lists = [list_male、list_female]'を試すことができます。 – 9000

+0

うん、美しく働く、ありがとう! – elzurdo

答えて

3

私はf_oneway(...)に慣れていないんだけど、それは可変個の引数を取ることができ、あなたがリストの可変数を持っていることを、あなたがこれを行うことができますと仮定:

list_male = [34.316349, 34.32932, 34.27, 34.33905, 34.328951] 
list_female = [34.61984, 34.34275, 34.6389, 34.44709, 34.51833] 
list_both = [...] 
list_neither = [...] 
list_of_lists = [list_male, list_female, list_both, list_neither] 

f_oneway(*list_of_lists) 

これを用いて達成されますsplat operatorの使用は、リストの内容を個々の引数に展開します。

関連する問題