Closed michaelvauth closed 2 years ago
Thanks for the issue!
I assume because continuum.categories as a positional argument gets overwritten by the keyword argument alpha=3.
Yes, you got half of the answer. If you want to use a "custom" categorical dissimilarity in your Combined Dissimilarity, you'll have to pass it as an argument. This is what you ought to do:
cat_dissim = CategoricalDissimilarity(contiuum.categories, delta_empty=1)
combined_dissim = CombinedCategoricalDissimilarity(alpha=3, beta=1, delta_empty=1.0, cat_dissim=cat_dissim)
If you got this example from the doc, please do tell me where so I can correct that.
You'll find the example here: https://github.com/bootphon/pygamma-agreement/blob/master/notebooks/Example.ipynb In the last Notebook cell:
for file in files:
start_time = time()
continuum = Continuum.from_csv(file)
dissimilarity = CombinedCategoricalDissimilarity(continuum.categories, alpha=3, beta=1, delta_empty=1.0)
gamma_results = continuum.compute_gamma(dissimilarity,
n_samples=30,
precision_level=0.01)
If I change it to
for file in files:
start_time = time()
continuum = Continuum.from_csv(file)
cat_dissim = CategoricalDissimilarity(contiuum.categories, delta_empty=1)
dissimilarity = CombinedCategoricalDissimilarity(alpha=3, beta=1, delta_empty=1.0, cat_dissim=cat_dissim)
gamma_results = continuum.compute_gamma(dissimilarity,
n_samples=30,
precision_level=0.01)
cat_dissim = CategoricalDissimilarity(contiuum.categories, delta_empty=1)
throws the error:
TypeError: Can't instantiate abstract class CategoricalDissimilarity with abstract methods compile_d_mat, d
OS: Windows10 Python Version: 3.9
The line
CombinedCategoricalDissimilarity(continuum.categories, alpha=3, beta=1, delta_empty=1.0)
in the last cell of the Example.ipynb throws the error:TypeError: __init__() got multiple values for argument 'alpha'
I assume becausecontinuum.categories
as a positional argument gets overwritten by the keyword argumentalpha=3
.