# Questions asking for statistical package recommendations: how do we differentiate in vs out of bounds for CV?

Recently, I asked for a recommendation for R packages that were capable of doing latent class analysis with mixed indicator types and were capable of doing latent class regression (i.e. treat the latent class as a multinomial random variable and fit a regression model to it). My rationale for asking it on Cross Validated was that the question requires statistical expertise to answer.

@gung closed the thread, stating that it was mainly about programming and was off topic. His verbatim response to me in comments was:

Questions that are only about software (e.g. error messages, code or packages, etc.) are generally off topic here. If you have a substantive machine learning or statistical question, please edit to clarify.

I protested that I had seen several questions here that similarly asked for package recommendations, but that were not closed. He responded:

It's not a programming question, so it should be off topic on Stack Overflow as well (whether it will be closed is another issue, but at any rate, I won't migrate it). I don't necessarily know where it would best be asked. Presumably one of the r-help listservs. There are plenty of questions here where R plays some role, & there was a time when the line was less clear & less enforced, but if you see any questions that only ask for a package recommendation, please flag them & we'll close them. They should all be closed, but we certainly could have missed some.

I pointed him to two similar questions. To his credit, he closed both; one is still searchable. However, in my view, that post also required statistical expertise to answer. Moreover, a year-old post recently floated to the top of my list because someone provided an answer; again, it asks for recommendations for a package, which requires statistical expertise to answer properly. It has not been closed.

From where I sit, I think this sort of question should be legitimate for Cross Validated, and it seems that I am not the only one to feel this way.

Gung has stated his reasoning for the current policy here. However, if my thread was closed, and if Gung closed two similar ones without pushback, then why are threads that ask for package recommendations about a specific statistical technique, and that require some statistical expertise to answer properly, still on the site? If the policy is unclear, and if it can't be clarified, then maybe it's a problem. Alternatively, perhaps the policy is clear enough, it's just that all the moderators just need to get tougher, or to get more lenient. Again, what is the line here?

Edit: Clarifying why I think statistical expertise is needed, using link #2 as an example: you have to know what cluster analysis is, and you have to know what distance metrics can generalize across both continuous and binary data (that would be Gower's distance, correctly identified by several people). The original poster mentioned the R package polca, which is latent class analysis and not cluster analysis (although the two methods appear to have similar goals).

If you thought you would recommend that poster an R package for latent class analysis (actually, that was my deleted question), you would obviously have to know what LCA was, and it would probably help if you knew that cluster analysis and LCA may have similar goals but they approach things pretty differently. The poster above might not be willing to learn LCA. I would certainly have said thanks but no thanks to cluster analysis (but if you told me there was a cluster analysis equivalent to latent class regression, I might reconsider).

Sticking to LCA, you would have to know that traditional LCA methods are developed for binary or categorical but not continuous indicators; you'd probably want to point the questioner to the flexmix package. However, my question also asked about latent class regression, and it does not seem to me that flexmix can perform this. Again, selecting an R package would require you to know what latent class regression is and how it differs from regular LCA - in LCR, you essentially add covariates to the multinomial part of the model that predicts class probabilities, which is distinct from the measurement part of the model (i.e. class predictor isn't an indicator of latent class).

Obviously, you could have tried Googling on CRAN. And you might have found one or more packages that do some or all of what you want. However, if you return a lot of results - for example, this site I found on CRAN describes cluster analysis and LCA packages, and it has a LOT of them - then I think it's justified to return here to see if anyone has specific knowledge. It's true I could read through the manuals for a few packages, and I did indeed read the manuals for polca and flexmix, but doing that many times is difficult. Yes, you can RTFM, but if the manual is so long as to be intractable...

• +1 Thank you for bringing this up. I think you make a good case based on the need for statistical expertise. But could you elaborate a little on (a) just how that expertise might be needed to answer such questions and (b) how posting such material on CV could provide anything that a search of CRAN wouldn't do? – whuber Feb 27 '19 at 17:32
• Re the edit: I want to believe that if you were to post the original question along with that explanation, the question would not only remain open but would also get useful answers. Your explanation distinguishes a thoughtful, engaged inquiry from the kind of "spaghetti" posts we frequently get from people who couldn't be bothered to research or formulate a reasonable question in the first place. (Spaghetti: throw it on the wall, see if it sticks; if somebody answers I'll download the software and point it at my data and then ask more questions about what its output means...) – whuber Feb 27 '19 at 19:10
• @whuber - on a different post that I flagged as (potentially) inappropriate for the reasons above, you asked me to pay attention to dates. You said that earlier in the site's history, similar posts were considered more acceptable (and yes, that was an older post). That's fair enough, but the help page only references is the current policy. Can you point me to where this is described? If not, I maintain that a reasonable person could perceive this as inconsistent moderation. – Weiwen Ng Feb 27 '19 at 19:10
• Something ungrammatical happened to your comment which prevents me from understanding it. The help page is supposed to be current--but it's always a good idea to search these meta pages for recent discussions of policy. – whuber Feb 27 '19 at 19:12
• A further reason for disliking package recommendation questions on CV is empirical: the threads are often very disappointing. What posters want -- and it's easy to see why and to sympathise -- is a detailed comparison based on experience with all the candidates. What is usually included in answers is much more likely to be "Use X; I have good experience with it" or "Use Y; which happens to be mine". When the thread is about software one doesn't even use it's as uninteresting as a discussion about some sport one doesn't follow or a kind of music you don't like. – Nick Cox Feb 27 '19 at 19:31
• @whuber I'm still getting used to how StackExchange works, but it does seem like your comment #2 is not far from being an answer (which I'd likely accept) if you rework it a bit. – Weiwen Ng Feb 27 '19 at 19:51
• We tend to do more commenting here in Meta, where the usual formalities are dropped. Voting reflects opinions people hold rather than the quality of a post and acceptance typically means little. – whuber Feb 27 '19 at 19:53
• Statistical package recommendations do require statistical knowledge, but are often not about the statistics (it is more about features of packages). You can get a lot of questions like 'which package can do statistics method X?'. It is similarly uninspired as questions like 'I have this data, what statistical method can I use?'. They are likely of low quality and because of that the question format should be avoided. It is much better when the OP does a bit more homework first and writes the question in a general format (ie comparing the underlying statistical methods in the packages). – Sextus Empiricus Feb 28 '19 at 14:26
• @MartijnWeterings The help page says that Cross Validated is about statistical analysis and statistical and data-driven computing (and some other topics). If the site were only about statistical analysis, then I concede the question would be improper. But it is not. I concede that historically, this type of question has not produced good answers. But, by my reading of what Cross Validated is about, it does seem to be within bounds. – Weiwen Ng Feb 28 '19 at 14:34
• "statistical and data-driven computing" what does that mean to you? Does it include a simple technical question like: 'how can I compute regression in C++ a question about statistical and data-driven computing?. Or should it be more a science oriented question like: 'what sort of algorithm will speed up computation of regression?'. Is a question 'where do I find the on-off button of the computer' the sort of computing question that is meant with that phrase? – Sextus Empiricus Feb 28 '19 at 14:35
• To me, it means questions about statistical computer programs are potentially allowed. "I tried to run a latent class model in flexmix but I got X error, what did I do wrong?" would be more a programming question, which is maybe StackOverflow, or I would email the package's authors. The type of question I outlined in the main body seems to be about statistical computing. – Weiwen Ng Feb 28 '19 at 14:38
• I agree that it is potentially allowed. But, the focus should be on 'computing' and not on 'programming' or 'software'. A question which is phrased as 'what package does...' is much like 'what program does...'. It is in the first place a programming or software question. It needs at least some additional twist to make it a question about statistics or computation. So questions about 'statistical and data-driven computing' is not like questions about 'statistical or data software'. – Sextus Empiricus Feb 28 '19 at 14:42