Skip to content
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

First version translated into Spanish from the firt 5 tutorials in package learnr (referring to the v1 of r4ds book) #788

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions NEWS.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@

- The default `try_again` message for checkbox questions now prompts the student to "select every correct answer" regardless of whether the question was created by `question()` or `question_checkbox()` (#783).

- Added translation to Spanish of the first 5 tutorials (which refer to the book r4ds v1 translated elsewhere into Spanish also - https://github.com/cienciadedatos/r4ds )

# learnr 0.11.3

- Fixed an issue that prevented authors from using symbols, such as `T` or a variable, as the value of the `exercise` chunk option, which caused tutorials with chunks with `exercise = T` to fail to render (thanks @cknotz #757, #758).
Expand Down
55 changes: 45 additions & 10 deletions data-raw/i18n_translations.yml
Original file line number Diff line number Diff line change
Expand Up @@ -395,7 +395,7 @@ text:
blank:
en: "blank"
fr: ~
es: ~
es: "espacio en blanco"
pt: ~
tr: ~
emo: ~
Expand All @@ -407,7 +407,7 @@ text:
blank_plural:
en: "blanks"
fr: ~
es: ~
es: "espacios en blanco"
pt: ~
tr: ~
emo: ~
Expand All @@ -420,7 +420,7 @@ text:
# {{count}} - the number of blanks detected in the exercise
en: "This exercise contains {{count}} $t(text.blank)."
fr: ~
es: ~
es: "Este ejercicio contiene {{count}} $t(text.blank)."
pt: ~
tr: ~
emo: ~
Expand All @@ -433,7 +433,7 @@ text:
# {{blank}} - the string representing a blank in the exercise (e.g. "___")
en: "Please replace {{blank}} with valid code."
fr: ~
es: ~
es: "Reemplaza {{blank}} con código válido, por favor."
pt: ~
tr: ~
emo: ~
Expand All @@ -452,7 +452,14 @@ text:
or <code>{</code> with a matching <code>&quot;</code>, <code>'</code>,
<code>)</code> or <code>}</code>.
fr: ~
es: ~
es: >
Parece que esto podría no ser un código de R válido.
R no puede determinar cómo convertir tu texto en un comando completo.
Es posible que hayas olvidado completar un espacio en blanco,
eliminar un guión bajo, incluir una coma entre argumentos,
o cerrar un <code>&quot;</code>, <code>'</code>, <code>(</code>
o <code>{</code> inicial con un <code>&quot;</code>, <code>'</code>,
<code>)</code> o <code>}</code> final.
pt: ~
tr: ~
emo: ~
Expand Down Expand Up @@ -500,7 +507,18 @@ text:
There may be other places that need to be fixed, too.</p>
{{suggestion}}
fr: ~
es: ~
es: >
<p>Parece que tu código R contiene comillas con un formato especial
o comillas &quot;rizadas&quot; (<code>{{character}}</code>)
alrededor de cadenas de caracteres, haciendo que tu código no sea válido.
R requiere que los valores de los caracteres estén entre marcas de
comillas simples o apóstrofes (<code>&quot;</code> o <code>'</code>).</p>
{{code}}
<p>No te preocupes, esta es una fuente común de errores cuando copias
código de otra aplicación que aplica su propio formato al texto.
Puedes intentar reemplazar el código en esa línea con lo siguiente.
Es posible que también haya otros lugares que deban corregirse.</p>
{{suggestion}}
pt: ~
tr: ~
emo: ~
Expand Down Expand Up @@ -537,7 +555,15 @@ text:
Try deleting the special character from your code and retyping
it manually.</p>
fr: ~
es: ~
es: >
<p>Parece que tu código R contiene un carácter especial inesperado
(<code>{{character}}</code>) que hace que tu código no sea válido.</p>
{{code}}
<p>A veces, tu código puede contener un carácter especial que parece un
carácter regular, especialmente si copias y pegas el código desde
otra aplicación.
Prueba de nuevo eliminando el carácter especial de tu código y vuelviendo
a escribirlo manualmente.</p>
pt: ~
tr: ~
emo: ~
Expand Down Expand Up @@ -568,7 +594,16 @@ text:
There may be other places that need to be fixed, too.</p>
{{suggestion}}
fr: ~
es: ~
es: >
<p>Parece que tu código R contiene un carácter especial inesperado
(<code>{{character}}</code>) que hace que tu código no sea válido.</p>
{{code}}
<p>A veces, tu código puede contener un carácter especial que parece un
carácter regular, especialmente si copias y pegas el código desde
otra aplicación.
Prueba de nuevo reemplazando el código de esa linea con lo siguiente.
Es posible que también haya otros lugares que deban corregirse.</p>
{{suggestion}}
pt: ~
tr: ~
emo: ~
Expand Down Expand Up @@ -618,7 +653,7 @@ text:
# separating list items
en: ", "
fr: ~
es: ~
es: ", "
pt: ~
tr: ~
emo: ~
Expand All @@ -630,7 +665,7 @@ text:
oxfordcomma:
en: ","
fr: ""
es: ""
es: ","
pt: ""
tr: ""
emo: ""
Expand Down
205 changes: 205 additions & 0 deletions inst/tutorials/ex-data-basics_es/ex-data-basics.Rmd
Original file line number Diff line number Diff line change
@@ -0,0 +1,205 @@
---
title: "Conceptos básicos de datos"
output:
learnr::tutorial:
language: es
progressive: true
allow_skip: true
df_print: default
runtime: shiny_prerendered
description: >
Obtén información sobre los tipos básicos de datos en R. Explora los _data_
_frames_ de R y aprende cómo interactuar con _data frames_ y sus columnas.
---

```{r setup, include=FALSE}
library(learnr)
library(tidyverse)
library(nycflights13)
library(datos)
millas <- as.data.frame(datos::millas) # Hack temporal del traductor del Tutorial. Forzamos aquí a mantener "millas" como data.frame() en memoria de R porque justamente el tutorial quiere mostrar la diferencia entre un tibble y un data.frame usando "millas" como data.frame, y parece que en el paquete "datos", el objeto millas se carga como data frame por omisión en la memoria de R.
tutorial_options(exercise.timelimit = 60)
```

## Bienvenidos

En este tutorial, aprenderás a usar R para inspeccionar el contenido de un _data frame_ o _tibble_. Los _data frames_ y los _tibbles_ son estructuras de R para almacenar datos tabulares; si heredas un conjunto de datos tabulares en R, es casi seguro que vendrá como una de estas estructuras.

Aquí aprenderás cómo hacer tres cosas con _data frames_ y _tibbles_:

1. Mirar el contenido de un _data frame_ o _tibble_
2. Abrir una página de ayuda que describa un _data frame_ o _tibble_
3. Identificar las variables y sus tipos en un _tibble_

También conocerás los conjuntos de datos `millas` (equivalente a `mpg` de la versión inglesa del libro) y `vuelos` (equivalente a `flights` de la versión inglesa del libro). Estos conjuntos de datos aparecen con frecuencia en los ejemplos de R.

Las lecturas de este tutorial siguen el libro [_R for Data Science_ (v1)](https://es.r4ds.hadley.nz/), secciones 3.2 y 5.1.

## `Data frames`

### ¿Qué es un `data frame`?

Un ___data frame___ es una colección rectangular de valores, generalmente organizados de modo que las variables aparezcan en las columnas y las observaciones en las filas.

Por ejemplo: el _data frame_ `millas` contiene observaciones recopiladas por la Agencia de Protección Ambiental de EE. UU. en 38 modelos de automóviles. Para ver el _data frame_ `millas`, escribe `millas` en el fragmento de código a continuación y luego haz clic en "Ejecutar código".

```{r mpg-setup}
millas <- as.data.frame(millas)
```

```{r mpg, exercise = TRUE}

```

<div id="mpg-hint">
**Pista:** Escribe `millas` y haz en el botón de "Ejecutar código".
</div>

### Una nota sobre `millas`

El código de encima funcionó porque te he cargado antes el paquete ggplot2 en este tutorial: `mpg` viene en paquete ggplot2 (y su traducción `millas` viene en el paquete `datos`). Si quieres mirar `millas` en tu ordenador, necesitas cargar los paquetes ggplot2 y datos primero. Lo puedes hacer en dos pasos:

1. Ejecuta `install.packages(c('ggplot2', 'datos'))` para instalar ggplot2 y datos si no los tienes todavía.
2. Carga ggplot2 y datos con las instrucciones `library(ggplot2)` y `library(datos)`

Después de esto, podrás acceder a cualquier objeto en ggplot2 o datos —incluyendo `mpg` o `millas`— hasta que cierres la sesión de R.

###

¿Notaste cuánta información había dentro de `millas`? Yo también. A veces, el contenido de un _data frame_ no cabe en una sola pantalla, lo que dificulta su inspección. Pronto veremos una alternativa para usar y examinar _data frames_. Pero primero consigamos algo de ayuda...

## Páginas de ayuda

### Como abrir una página de ayuda

Puedes aprender más sobre `millas` abriendo su página de ayuda. La página de ayuda explicará de donde viene el conjunto de datos `millas` y qué describe cada variable en `millas`. Para abrir la página de ayuda, escribe `?millas` en el fragmento de código de debajo y haz clic en "Ejecutar código".

```{r help, exercise = TRUE}

```

<div id="help-hint">
**Pista:** Escribe `?millas` y haz clic en el botón de Ejecutar código.
</div>

### ? sintaxis

Puedes abrir una página de ayuda para cualquier objeto que venga con R o con un paquete R. Para abrir la página de ayuda, escribe un `?` antes del nombre del objeto y luego ejecuta el comando, como lo hiziste con `?millas`. Esta técnica funciona para funciones, paquetes y más.

Ten en cuenta que los objetos creados por ti y tus colegas no tendrán una página de ayuda (a menos que crees una).

### Ejercicios

Usa el código de debajo para responder las siguientes preguntas.

```{r exercises1, exercise = TRUE}

```

```{r quiz1, echo = FALSE}
quiz(caption = "Test",
question("¿Qué significa la variable `traccion` de `millas`? Lee la ayuda para `?millas` para averiguarlo.",
answer("Si el vehículo tiene airbags laterales para la persona conductora o no"),
answer("Si el vehículo tiene transmisión automática o manual"),
answer("El número de cilindros del motor del vehículo"),
answer("Algo diferente", correct = TRUE, message = "`traccion` describe el tipo de tracción en el vehículo: d = delantera, t = trasera, 4 = 4 ruedas."),
allow_retry = TRUE
),
question("Cuantas filas tiene el _data frame_ llamado `cars`?",
answer("2"),
answer("25"),
answer("50", correct = TRUE),
answer("100"),
incorrect = "Incorrecto.\nPista: R numera las filas de un _data frame_ cuando muestra el contenido del _data frame_. Como resultado, puedes detectar el número de filas en `cars` por medio de examinar `cars` en el bloque de código de arriba.",
allow_retry = TRUE
),
question("Cuantas columnas hay en el _data frame_ llamado `cars`?",
answer("1"),
answer("2", correct = TRUE),
answer("4"),
answer("más de cuatro"),
incorrect = "Incorrecto.\nPista: Si inspeccionas el contenido de `cars` en el bloque de código de arriba, debería ser bastante fácil contar su número de columnas.",
allow_retry = TRUE
)
)
```

## _tibbles_

### ¿Qué es un _tibble_?

El _data frame_ `vuelos` en el paquete `datos` (traducción del _data frame_ `flights` en el paquete `nycflights13`) es un ejemplo de un _tibble_. Los _tibbles_ son _data frames_ con algunas propiedades extra.

Para ver a lo que me refiero, usa el fragmento de código de debajo para mostrar el contenido de `vuelos`.

```{r flights, exercise = TRUE}

```

<div id="flights-hint">
**Pista:** Escribe el nombre del _data frame_ que quieres imprimir y haz clic en el botón de Ejecutar código. He cargado los paquetes `nycflight13` y `datos` para ti ya.
</div>

###

Buen trabajo. `vuelos` describe cada vuelo que ha salido de la ciudad de Nueva York en 2013. Los datos provienen de la [Oficina de Estadísticas de Transporte de EE. UU.](http://www.transtats.bts.gov/DatabaseInfo.asp?DB_ID=120&Link=0), y el conjunto de datos está documentado en `?vuelos`.


### La visualización de un _tibble_

Quizás te darás cuenta que `vuelos` se ve un poco diferente que `millas`. `vuelos` muestra solo las primeras filas del _data frame_ y solo las columnas que caben en pantalla.

`vuelos` se imprime de forma diferente porque es un ___tibble___. Los _tibbles_ son _data frames_ que se modifican ligeramente para que sean más fáciles de usar. Por ejemplo, R no intenta mostrarte todo un _tibble_ a la vez (pero intentará mostrarte todo un _data frame_ que no sea un _tibble_).

Puedes usar `as_tibble()` para devolver una versión _tibble_ de cualquier _data frame_. Por ejemplo, esto devolvería una versión _tibble_ de `millas`: `as_tibble(millas)`.


## Tipos de datos

### Códigos de tipo

```{r flights3, echo = FALSE}
vuelos
```

¿Te diste cuenta de que debajo de los nombres de las columnas de `vuelos` aparece una fila de tres (o cuatro) abreviaturas de letras? Estas abreviaturas describen el _tipo_ de datos que se almacenan en cada columna de `vuelos`:

* `int` significa números enteros.

* `dbl` significa dobles o números reales.

* `chr` significa vectores de caracteres o cadenas de texto.

* `dttm` significa fecha-hora (una fecha + una hora; de las siglas en inglès data-time).

Hay otros tres tipos comunes de variables que no se usan en este conjunto de datos pero se usan en otros conjuntos de datos:

* `lgl` significa vectores lógicos que contienen solo `VERDADERO` o `FALSO`.

* `fctr` significa factores, que R usa para representar variables categóricas
con posibles valores fijos.

* `fecha` significa fechas.

Esta fila de tipos de datos es exclusiva de _tibbles_ y es una de las formas en que los _tibbles_ intentan ser más fáciles de usar que los _data frames_.


### Comprueba tu conocimiento

```{r quiz2, echo=FALSE}
question("¿Qué tipos de variables contiene `vuelos`? Marca todo lo que corresponda.",
type = "multiple",
allow_retry = TRUE,
incorrect = "No exactamente. Mira con más detalle en `vuelos`.",
answer("enteros (integers)", correct = TRUE),
answer("dobles (doubles)", correct = TRUE),
answer("factores (factors)"),
answer("caracteres (characters)", correct = TRUE),
correct = "¡Buen trabajo!"
)
```

### Felicidades

Has conocido las estructuras básicas de tablas en R: _data frames_ y _tibbles_; y has aprendido a inspeccionar su contenido. Cuando estés listo/a, continúa con el siguiente tutorial para comenzar a visualizar tus datos.

Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading