Qual linguagem de programação para inferência estatística?

8

apenas por curiosidade ... Qual idioma é o mais usado aqui? R? MATLAB? Pitão? Java?

O que para protótipo ou produção? Por exemplo, acho que o MATLAB é usado principalmente para prototipagem, python para ambos prot. e produção ...

nkint
fonte
6
resolvido praticamente aqui: stackoverflow.com/questions/2200460/…
radek
2
Feito wiki, pois isso é totalmente subjetivo.
Shane

Respostas:

7

Eu não poderia concordar mais com um voto para R. R é o "Lingua Franca" do mundo das estatísticas. É a definição de ponta, enquanto a maioria dos pacotes para MATLAB e SAS leva vários meses. A linguagem é muito simples de entender, em oposição ao SAS. Também oferece o poder de se conectar com C / C ++ / Python e bancos de dados.

Considere a versão Revolution do R do Revolution Analytics para obter um pouco mais de desempenho.

http://www.revolutionanalytics.com/products/revolution-r.php

pslice
fonte
2
Devo dizer que tenho que discordar sobre R ser mais simples de aprender que o SAS. Pode ser porque eu aprendi SAS e SPSS primeiro, mas acho que SAS, SPSS (PASW agora) e Stata são linguagens mais fáceis de entender do que R. É um argumento subjetivo.
Andy W
Sinto que o R oferece muito mais ao usuário em termos de funcionalidade. Ele vai além do que o SAS / SPSS pode fazer.
Pslice
3
Não discordo disso, mas isso não facilita a compreensão. Eu acho que é bastante transparente com quais objetos eu estou trabalhando no SAS, SPSS ou Stata e o formato / natureza desses objetos, mas não é tão transparente no R. Embora R possa ser mais avançado, raramente tenho um necessidade de técnicas estatísticas de ponta no meu dia-a-dia.
Andy W
Difícil pensar em sistemas de código fechado sendo transparentes. Mesmo que você tenha usado apenas métodos estatísticos antigos, R é um sistema mais eficiente para usá-los e forma uma caixa de ferramentas de pesquisa reproduzível completa.
Frank Harrell
8

Bem, você pode PAGAR pelo MATLAB e, em seguida, (1) programar o material que você realmente precisa desde o início ou (2) PAGAR MAIS pelas caixas de ferramentas do MATLAB. E descubra que fazer estatísticas úteis no MATLAB foi uma reflexão tardia na Caixa de ferramentas de estatísticas cada vez menos útil. Ou ... você pode fazer o download do R GRATUITAMENTE e procurar (e encontrar!) Os pacotes de que precisa, que também pode ser baixado GRATUITAMENTE.

Muitas coisas de produção em pequena escala podem ser feitas em R. Se você está fazendo algo realmente grande (pense no censo dos EUA), provavelmente precisará aprender SAS - e fazer com que seu empregador pague por isso.

Mike Anderson
fonte
7

"Popularidade" depende da comunidade e da definição de "estatística". Em todo o mundo, tendo uma visão ampla da "inferência estatística" como incluindo qualquer método para tirar conclusões ou tomar ações com base em dados quantitativos, há poucas dúvidas de que o Excel supera todos os outros aplicativos, incluindo R, SAS, Stata, SPSS e S Mais . (Os links apontam para diferentes tipos de estatística, mas são altamente sugestivos, para dizer o mínimo.) Python e MATLAB nem são pontuais nas estatísticas. Não estou dizendo que isso é uma coisa boa ou que devemos gostar: é assim que é e é assim que vai ficar por muito tempo.

Não devemos extrair inferências do que pode parecer popular "aqui" neste fórum. Os fornecedores de software comercial oferecem suporte a seus próprios fóruns, portanto, naturalmente, um local como o SE favorecerá as pessoas que usam software com suporte menos ativo, especialmente soluções gratuitas, de código aberto e acadêmicas.

whuber
fonte
6

Deve ficar claro, observando as tags mais populares, que R é o idioma mais popular neste site. Se isso o torna o idioma mais popular para análise estatística, não se pode inferir diretamente, mas é possível supor isso.

Shane
fonte
4

R e SAS têm seus prós e contras. Penso que mais estatísticos precisam adotar o fato de que muitos softwares estatísticos estão disponíveis, em vez de brigas intermináveis ​​sobre o que é superior.

R é grátis. SAS é muito caro. R oferece a capacidade de fazer praticamente qualquer coisa. SAS pode ou não. R tem incríveis habilidades gráficas. Ver gráficos SAS faz com que pareça 1985 novamente. O SAS tem um ótimo suporte ao cliente. Suporte R = horas de busca nos arquivos da lista de discussão. Também com um nome como "R", os resultados dos mecanismos de pesquisa geralmente são ruins. R é extremamente lento e não lida bem com grandes conjuntos de dados. O SAS funciona bem com grandes conjuntos de dados. O SAS tende a ser mais robusto. Na minha experiência, quando se trata de modelagem de efeitos mistos ou qualquer coisa que envolva o design de experimentos (como analisar projetos cruzados), o SAS é superior.

Para simulações de força bruta em larga escala, eu uso o Fortran. Eu costumava usar C, mas achei o Fortran muito mais fácil de usar. Eu nunca usei o MATLAB. Se eu precisar do poder estatístico de R, mas da velocidade do Fortran, escreverei as operações demoradas (ou seja, loops) no Fortran e chamarei a sub-rotina de R.

MichaelSnot
fonte
3
Bem, o suporte ao R é um local como este, que geralmente é mais eficaz do que um suporte pago. Para o Google, existe o rseek.org, funciona muito bem. 99% dos casos R-is-slow podem ser resolvidos com algum pensamento; também existem pacotes para lidar com grandes dados (também não é simples no SAS). R é uma linguagem de programação, SAS é um SQL estendido.
2
+1 porque essa resposta é útil, mas acho que seus pontos sobre o suporte, a velocidade e a capacidade de R de lidar com grandes dados estão desatualizados ou se tornam tão rapidamente.
Matt Parker
2
Vou colocar o comentário do @Matt e do @ mbq sobre o desempenho do R, mas gostaria de acrescentar que o R é realmente bom para (N) LMEs. Lembro-me de uma palestra de Doug Bates na conferência DSC 2009, onde ele mostrou como o lme4pacote lida facilmente com muitos efeitos aleatórios (como encontrado, por exemplo, na avaliação educacional). Minha própria experiência (mas limitada) (SAS NLMIXED vs. R lme4) confirma esse ponto: o R não é mais lento que o SAS quando se trata de aplicar modelos complexos de IRT e também lida com grandes conjuntos genéticos de dados (graças à implementação inteligente de C) .
chl
1

Minha preferência vai para Python e, talvez, Java. Primeiro, eles são linguagens de programação reais. Segundo, eles são os idiomas mais populares (Índice TIOBE). Você também pode converter entre esses idiomas usando várias linguagens de script. No passado, eu uso a plataforma DMelt http://jwork.org/dmelt/ para realizar cálculos estatísticos e fiquei muito impressionado com os gráficos em 2D e 3D, que podem ser facilmente alcançados para trabalhos profissionais. O pacote R não me impressionou com os gráficos.

john2
fonte
2
Isso não aborda a questão da linguagem mais popular para inferência estatística. É principalmente sobre suas preferências pessoais, com uma menção do que são linguagens de programação populares.
Nick Cox