New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DETECT explaratory procedure nclusters
argument
#15
Comments
|
I don't think it works as intended. It always reports the optimal cluster size as the user specified I similarly run the exploratory procedure for the TIMSS data in the package. I specified the max ncluster as 10. Here is the output from the original software.
As you can see, it finds that the optimal number of cluster is 4 and reports the identified item clusters with a DETECT value of 0.4365. When I run the following code in R, it gives me this.
The output is below. I just can't make sense of it. It reports the optimal cluster size as 10 (if you change nclusters to 5, then it reports the optimal cluster size as 5). Also, the numbers it reports for 4 cluster solution doesn't look same.
|
Is It may be screwing all these numbers. |
I will include the I probably agree that Moreover, there is work that showed that the cross-validated DETECT index should almost always be prefered to the non-validated exploratory DETECT index. Hence, I was not too eager to replicate findings of the DETECT software. |
Thank you. Well, this is not really about cross-validated vs. non-validated. Even though you run the above example with cross-validated procedure, the DETECT numbers from expl.detect() is not consistent with the original software. I am just trying to understand why, and if there is any way to fix it. If not, it is also OK. We just need to be aware of that fact as researchers. I really respect the work you do by developing the package and integrating the DETECT procedure into this package. I opened these issues and am asking these questions because my concern is that some people may do research on DETECT using the functions included in the sirt package and their findings will significantly deviate from findings already published in the literature. Also a side note: No, cross-validated DETECT index should not always be preferred to the non-validated DETECT index in an exploratory analysis. There is a trade-off between bias and variance (this is also based on some published work). Thank you again for your responsiveness. |
I will certainly add a note in the |
I checked the results of |
Hi again,
Sorry to bother you with so many questions. As I indicated before I am trying to make sure this package does what original DETECT program does.
There is an argument
nclusters
for theexpl.detect()
function. It seems that the user is expected to specify the number of clusters before running the analysis.This is a little bit confusing. Based on my understanding, the purpose of running the exploratory DETECT procedure is to explore and decide the number of clusters. So, it is unexpected to ask the user to specify that before the analysis.
In the original DETECT program, you only specify the maximum possible cluster allowed (say 10). Then, when the exploratory DETECT runs, it searches the whole space for nclusters=2, nclusters=3, nclusters = 4, ..., nclusters= 10. In the end, it returns the solution with the maximum DETECT value. So, the user can estimate how many potential clusters with the items assigned to clusters for the optimized solution. It is like deciding the number of factors.
The way
sirt
runs the exploratory DETECT seems different. Please let me know if I am missing anything, or I am interpreting inaccurately.Thank you.
The text was updated successfully, but these errors were encountered: