Skip to content

Instantly share code, notes, and snippets.

@walmes
Created January 14, 2016 13:49
Show Gist options
  • Save walmes/1a9a5918702c465a31fd to your computer and use it in GitHub Desktop.
Save walmes/1a9a5918702c465a31fd to your computer and use it in GitHub Desktop.
A snippet to a reprocible bug in markdown-mode cycling and navigation to help the developers.
## Nomes de arquivos ##
```
# Bom.
script.R
# Ruim.
script.r
```
```
# Bom.
prepara_dados.R
ajusta_modelo.R
```
O mesmo vale para as extenções `Rmd`, `Rnw`, `RData`, `Rd`. Sempre devem
ter o R do sulfixo maiúsculo, além de nomes não vagos ou óbvios.
Se em um conjunto de arquivos houver relação sequêncial entre eles,
utilize uma forma de destacar isso no nome. Por exemplo, componha nomes
com números.
```
# Bom.
0_prepara_dados.R, 1_ajusta_modelo.R
cap1_introducao.Rmd, cap2_exploratoria.Rmd, ..., cap5_conclues.Rmd
```
## Nomes de objetos ##
### Contadores ###
```{r, eval=FALSE}
# Um laço for.
x <- 1:10
for (i in 1:length(x)) {
x[i] <- sum(x[1:i])+i
}
```
### Matrizes ###
O nome de matrizes geralmente se usa letras maiúsculas, a exemplo do que
se faz nos textos matemáticos. Portanto, são opções imediatas `X`, `Y`,
`K`, `C`, `A`, `L`, `U`, `V`, etc.
### Constantes ###
Assim como os contadores, constantes usadas no código podem ser
representadas por letras, como `g`, `x`, `k`.
```{r, eval=FALSE}
# Um número uniforme.
x <- runif(1, min = 0, max = 1)
## Um número uniforme.
x <- runif(1, min = 0, max = 1)
```
### Funções ###
### Tabelas de dados ###
## Atribuição ##
Faça atribuição de objetos com o sinal de atribuir e não com o
igual. Deixe espaço cercar o operador.
```{r, eval=FALSE}
# Bom.
x <- 1:10
notas <- data.frame(aluno, freq, nota)
# Ruim.
x = 1:10
notas = data.frame(aluno, freq, nota)
# Péssimos.
x=1:10
notas<-data.frame(aluno, freq, nota)
```
## Indentação ##
```{r, eval=FALSE}
# Bom.
for (i in 1:3) {
if (a > 0) {
m0 <- lm(log(y) ~ x,
data = animals[[i]])
} else {
m0 <- lm(y ~ x,
data = animals[[i]])
}
}
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment