Tabela de conteúdos

Programação de métodos estatísticos integrando as linguagens C e R

Programação de métodos estatísticos integrando as linguagens C e R

Resumo

Minicurso (INFORMAL) sobre programação envolvendo e combinando as linguagens C e R.

Será mostrado como pode-se escrever programas em C, utilizando procedimentos e rotinas do R (e ainda de outras bibliotecas como LAPACK etc).
Como exemplo serão mostrados como implementar alguns métodos e operações úteis e comuns em estatística.

Em resumo, o objetivo é fazer um cálculo em C com argumentos declarados em R. Por exemplo, procedimentos iterativos (for, while, repeat) são mais eficientes em C. Podemos programar um procedimento desses em C, gerar uma biblioteca dinamica e usa-la a partir do R, bastando chamar a funcao C e passar os argumentos como ponteiro.

Eventualmente o procedimento que vamos programar em C requer uso de funções de cálculos mais avançados, tais como inversão de matrizes, geração de números aleatórios, optimização, etc. Para isso, usamos bibliotecas R escritas em C, que fazem esses cálculos, dentro do nosso programa em C.

Tópicos

Os tópicos abordados no curso podem serão divididos em 3 aulas:

  1. aula 1
    1. soma e media de vetores
    2. outer e produto matricial
  2. aula 2
    1. geracao de numeros aleatorios e calculo de probabilidades
    2. analise de regressao linear simples
    3. modelo de regressao de poisson
    4. numeros aleatorios da distribuicao normal multivariada
  3. aula 3
    1. determinante e inversao de matrizes
    2. densidade da distribuicao normal multivariada
    3. exemplo de MCMC
    4. chamando funcao R a partir do C++

Instruções aos interessados

  apt-get install r-base r-base-core r-base-dev r-mathlib r-recommended lapack3-dev gcc gfortran
OBS: Se não houver habilitação para pacotes dev no seu computador, substitua lapack3-dev por lapack3

ter instalado o R e o Rtools (ver instruções para instalar o Rtools na Página do Rtools).

Portanto, procure fazer isso antes. Veja instruções em Windows toolset

Material

AULA 1

AULA 2

AULA 3

Adicional:

Usando r-mathlib em programas C standalone
Basta ter os dois arquivos abaixo num diretorio
(verificar se os locais do Rmath.h e libRmath.so estão referenciados corretamente)
compilar com make

Participantes

Lista de participantes do curso

Outras informações

  1. Incrições:
    • email to paulojus AT leg.ufpr.br
  2. Promoção: LEG
  3. Agradecimento especial: Paulo Justiniano Ribeiro Junior