Bienvenida e introducci贸n

1

Todo lo que aprender谩s sobre el lenguaje R

2

Programaci贸n y Data Science

3

R y proyecto econom铆a naranja.

4

Instalando nuestras herramientas

Variables, tipos de datos y estructuras

5

Los primeros c谩lculos con R y variables

6

Tipos de datos

7

Estructura del dataset del proyecto

8

Vectores

9

Matrices

10

Ejercicios con matrices

11

Operadores para comparar y ubicar datos

12

Factores, listas y echar un vistazo al dataset

EDA: Exploratory data analysis

13

Qu茅 es EDA: Exploratory Data Analysis

14

Gr谩ficas de dispersi贸n e histogramas.

15

Box Plot y su interpretaci贸n

16

EDA con dataset proyecto - Gr谩ficas de dispersi贸n.

17

EDA con histogramas.

18

EDA con dataset proyecto - histogramas - ggplot2

19

EDA con box plot- ggplot2

20

EDA con dataset proyecto - box plot- ggplot2 - dplyr

21

EDA con gr谩ficas de dispersi贸n con m谩s de dos variables - ggplot2

22

EDA con dataset proyecto usando gr谩ficas de dispersi贸n con m谩s de dos variables - ggplot2 - plotly

La estad铆stica de los datos

23

Buscando correlaciones con pairs

24

Confirmando correlaciones con la funci贸n cor

25

Buscando correlaciones con pairs en dataset proyecto

26

Confirmando correlaciones con la funci贸n cor en dataset proyecto.

27

Protegi茅ndonos de los peligros del promedio.

28

Eliminando los NA's para hacer los c谩lculos.

29

Estad铆stica y visualizaci贸n aplicada a an谩lisis de datos de mercadeo.

Ajustando los datos

30

Generando tablas, filtrando y seleccionando datos - dplyr-Parte 1

31

Generando tablas, filtrando y seleccionando datos - dplyr-Parte 2

Mejorando la visualizaci贸n

32

Viendo m谩s informaci贸n con facet wrap - Parte 1

33

Viendo m谩s informaci贸n con facet wrap - Parte 2

Organizar visualizaciones y c贸digo con R Markdown

34

Conociendo R Markdown y organizando los hallazgos del an谩lisis en un documento PDF.

Conclusiones Finales

35

Invitaci贸n a continuar recorriendo el mundo del data science.

A煤n no tienes acceso a esta clase

Crea una cuenta y contin煤a viendo este curso

Ejercicios con matrices

10/35
Recursos

rbind: funci贸n para a帽adir una fila.

Reto: agrega una columna a nuestra matriz para indicar el d铆a Sabado.

Para seleccionar r谩pidamente un elemento de una matriz solamente debemos indicar entre corchetes el n煤mero de la fila y de la columna.

Aportes 112

Preguntas 5

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesi贸n.

Una forma sencilla de agregar una columna incluyendo el nombre de cabecera seria:
final_matrix <- cbind(final_matrix, Sabado = c(1, 2, 3))

Asi me funciono

Tiempo_Podcast<-c(10,15,30,5,0)  

Final_matriz <- rbind(tiempo_matriz,Tiempo_Podcast)
  
final_matriz

Sabado <- c(25,30,10)

Final_matriz2 <- cbind(final_matriz,Sabado)
Final_matriz2

Agregar columna y crear el nombre de fila 鈥渢iempo podcast鈥

Sabado = c(30,25,27)
final_matrix_sabado <- cbind(final_matrix, Sabado)
rownames(final_matrix_sabado)<-c("tiempo Platzi","tiempo lecturas","Tiempo podcast")
final_matrix_sabado

Mi aporte para a帽adir tiempo de estudio el d铆a sabado:

final_matrix_2 <- cbind(final_matrix, c(20,30,15))
final_matrix_2

dias <-c(鈥淟unes鈥, 鈥淢artes鈥, 鈥淢iercoles鈥, 鈥淛ueves鈥, 鈥淰iernes鈥, 鈥淪abado鈥)
Tiempo <- c(鈥淭iempo Platzi鈥, 鈥淭iempo Lecturas鈥, 鈥淧otcast鈥)

colnames(final_matrix_2) <- dias
rownames(final_matrix_2) <- Tiempo
final_matrix_2

Me quise simplificar la vida por lo que solo sub铆 hasta donde ten铆amos tiempo_platzi y tiempo_lecturas y cree la variable podcast con 6 n煤meros, a platzi y lecturas les agregue una cifra m谩s, a la variable tiempo_matrix le cambie nrow = 3 y a d铆as y tiempo les agregue 鈥渟谩bado鈥 y 鈥減odcast鈥

vi esta forma y me gusto
@CiprianoBryan
#agregado_de_fila_a_la_matriz

final_matrix<-rbind(tiempo_de_matrix,podcast=c(10,20,13,02,13))
final_matrix
#agregado_de_columna_a_la_matriz

dias_new<-cbind(final_matrix,sabado=c(12,25,20))
dias_new

#ejercicios con matrices
final_matrix <- rbind(tiempo_matrix,posdcast=c(10,15,30,5,0))
final_matrix

mostrar_matrix_final <- rbind(final_matrix,colSums(final_matrix))
mostrar_matrix_final

#Reto1: agregar una columna s谩bado
final_matrix_reto1 <- cbind(final_matrix,sabado=c(10,5,15))
final_matrix_reto1

mostrar_matrix_final <- rbind(final_matrix_reto1,colSums(final_matrix_reto1))
mostrar_matrix_final```

Muy bueno el curso, s贸lo que en este espacio podr铆an dedicar un poco m谩s tiempo a explicar operaciones entre matrices con R, no toma mucho (m谩x 3 minutos) y podr铆an explicar las b谩sicas como suma, multiplicaci贸n, inversa, transpuesta, etc.

#Se a帽ade una nueva columna a la anterior matriz
sabado = c(5,10,15,20)
final2_matriz <- cbind(final_matriz, sabado)


final2_matriz

Importante notar que en la matrix no se comienza a contar desde 0 como en otros lenguajes

agregar nueva columna

tiempo_matrix_adicional = cbind (tiempo_matrix, c(10,15,20))
colnames (tiempo_matrix_adicional)[6] <- "Sabado"
tiempo_matrix_adicional

EJERCICIO:
#nueva columna
final_matrix2 <- cbind(tiempo_matrix,c(40,20,30))
final_matrix2

final_matriz <- cbind(final_matriz, c(1, 2, 3))
dias <- c(dias, 鈥淪abado鈥)
colnames(final_matriz) <- dias
tiempo <- c(tiempo, 鈥淧odcasts鈥)
rownames(final_matriz) <- tiempo

Tengo una duda con respecto a los nombres de las filas y columnas que se pueden asignar con cbin o rbin. Esto dice la documentaci贸n:

For cbind row names are taken from the first argument with appropriate names: rownames for a matrix, or names for a vector of length the number of rows of the result.

For rbind column names are taken from the first argument with appropriate names: colnames for a matrix, or names for a vector of length the number of columns of the result.

> ejercicio_matrix <- cbind(final_matrix, c(40,20,30))
> ejercicio_matrix
                Lunes Martes Miercoles Jueves Viernes   
tiempo platzi      25      5        10     15      10 40
tiempo lecturas    30     10         5     10      15 20
                   10     15        30      5       0 30        
> colnames(ejercicio_matrix) <- c(dias, "Sabado")
> rownames(ejercicio_matrix) <- c(Tiempo, "Podcast")
> ejercicio_matrix
                Lunes Martes Miercoles Jueves Viernes Sabado
tiempo platzi      25      5        10     15      10     40
tiempo lecturas    30     10         5     10      15     20
Podcast            10     15        30      5       0     30
#Agregar columna
finalfinal_matrix <- cbind(final_matrix,c(7,5,15))

#Agregar nombre a columna y fila
colnames(finalfinal_matrix)<-c("lunes","martes","miercoles","jueves","viernes","sabado")
row.names(finalfinal_matrix)<-c("tiempo platzi","tiempo lecturas","podcast")

# agregar la columna 
final_matrix2=cbind(final_matrix,c(25,30,15)) 
# agregar nombre columna
colnames(final_matrix2)=c("Lunes","Martes","Miercoles","Jueves","Viernes","Sabado") 

Creo que hize el camino mas largo, alguien que me de feebback ? 馃
Primera Parte
A帽adir una fila para Platzi podcast

Segunda Parte
A帽adir una columna para el dia sabado

final_matrix$Sabado <- c(5,16,2)

agrfila <- rbind(tiempo_matrix, tiempo_podcast = c(10, 15, 30, 5, 0))

agrcolumna <- cbind(agrfila, sabado = c(10, 20, 30))

final_matrix <- cbind(final_matrix,Sabado = c(10,20,5)) final_matrix colSums(final_matrix) Y el resultado al correrlo es : final_matrix <- cbind(final_matrix,Sabado = c(10,20,5)) > final_matrix Lunes Martes Miercoles Jueves Viernes Sabado tiempo platzi 25 5 10 15 10 10 tiempo lecturas 30 10 5 10 15 20 10 15 30 5 0 5 > colSums(final_matrix) Lunes Martes Miercoles Jueves Viernes Sabado 65 30 45 30 25 35

matriz superfinal completada!

hola, la forma como resolv铆 el desafio fue:

final_matrix_2 <- cbind(final_matrix, c(20,30,15))
final_matrix_2

dias2 <-c(dias,鈥淪abado鈥)
dias2
tiempo2 <- c(tiempo, 鈥渢iempo podcast鈥)
tiempo2

colnames(final_matrix_2) <- dias2
rownames(final_matrix_2) <- Tiempo2
final_matrix_2

teniendo en cuenta que primero resalte (y di Enter) al d铆a y tiempo de las lineas 81 y 82 (del video anterior)

As铆 logre dar soluci贸n al reto 馃槂

Podcast <- c(10,15,20,15,0)
final_mat <- rbind(t_matriz, Podcast)
final_mat
Sabado <- c(10,15,5)
definitive_mat <- cbind(final_mat,Sabado).
definitive_mat
total<-colSums(definitive_mat)
total
def_mat<-rbind(definitive_mat,total)
def_mat

Names clear with janitor package

Si deseas limpiar los nombres de tu dataset puedes usar janitor.

install.packages("janitor")

library("janitor")

orangeec_new <- janitor::clean_names(orangeec)

names(orangeec_new)

Hola a todos, comparto mi reto:

Agregar columna :

final_matrix <- cbind(final_matrix,Sabado=c(30,20,25))

rbind: a帽ade fila (viene de row) cbind: a帽ade columna (viene de column) Es bueno ser ordenado e ir guardando comentarios con el s铆mbolo # en el script.

tiempo_platzi <- c(25, 5, 10, 15, 10, 15)
tiempo_lecturas <- c(30, 10, 5, 10, 15, 10)
podcast <- c(10, 15, 15, 30, 20, 10)
tiempo_matrix <- matrix(c(tiempo_platzi, tiempo_lecturas, podcast), nrow = 3, byrow = TRUE )

dias <- c(鈥渓unes鈥, 鈥渕artes鈥, 鈥渕iercoles鈥, 鈥渏ueves鈥, 鈥渧iernes鈥, 鈥渟abado鈥)
tiempo <- c(鈥渢iempo_platzi鈥, 鈥渢iempo_lecturas鈥, 鈥減odcast鈥)

colnames(tiempo_matrix) <- dias
rownames(tiempo_matrix) <- tiempo

colSums(tiempo_matrix)

tiempo_matrix

final_matrix_final <- cbind(final_matrix,c(15,10,16))

colnames(final_matrix_final) <- c("Lunes","Martes","Miercoles","Jueves","Viernes","Sabado")
rownames(final_matrix_final) <- c('Tiempo Platzi', "Tiempo Lecturas","Podtcast")
final_matrix_final```

En los comentarios me di cuenta de un par谩metro de la funci贸n cbind() que simplifica el c贸digo. Sin embargo expongo mi soluci贸n con ustedes

`final_matrix = cbind(final_matrix,c(20,20,20))
final_matrix

#Ahora si agrego los nombres de la columna y la fila

dias[6] = "Sabado"
colnames(final_matrix) <- dias
final_matrix
Tiempo[3] = "tiempo podcast"
rownames(final_matrix) <- Tiempo
final_matrix

colSums(final_matrix)`

<code>
matriz_final <- rbind(tiempo_matriz,c(10,15,20,25,40))
rownames(matriz_final) <- c(tiempo,"podcast")
matriz_final <- cbind(matriz_final,c(10,10,10))
colnames(matriz_final) <- c(dias,"sabado")
matriz_final
</code>

馃煝

final_matriz <- rbind(tiempo_matriz, tiempo podcast= c(15,10,20,5,0))
final_matriz
final_matriz_sabado <- cbind(final_matriz, Sabado = c(40,20,30))
final_matriz_sabado

rbind - para filas
cbind - para columnas

He aqu铆 mi reto:

  • Agregando la fila podcast.
  • Agregando la columna para el tiempo del sabado.
final_matrix <- rbind(tiempo_matrix, "tiempo podcast" = c(10,15,20,52,12))

final_matrix

final_matrix_sabado <- cbind(final_matrix, Sabado = c(40,20,30))

final_matrix_sabado```

驴En la sint谩xis de R no se usa ; ?

f.matrix<-cbind(f.matrix,c(20,35,60))
days2<-c(鈥渕onday鈥, 鈥渢uesday鈥, 鈥渨ednesday鈥,鈥渢hursday鈥, 鈥渇riday鈥, 鈥渟aturday鈥)
colnames(f.matrix)<-days2
f.matrix

#add col
final_matrix_col <- cbind(final_matrix,c(10,15,30))
colnames(final_matrix_col)<- c(鈥淟unes鈥,鈥淢artes鈥,鈥淢iercoles鈥,鈥淛ueves鈥,鈥淰iernes鈥,鈥淪abado鈥)
final_matrix_col
colSums(final_matrix_col)

jajaja, en el video anterior me naci贸 esta duda, y no sab铆a que estaba aqu铆 el rbind鈥

Como puedo extraer los resultados de una matriz para insertar en un informe, de modo que no necesite editar la tabla?

final_matrix <- rbind(tiempo_matrix, c(10,15,30,5,0))
final_matrix <- cbind(tiempo_matrix, c(30,30), c(20,20))

dias <- c("Lunes","Martes","Miercoles","Jueves","Viernes","Sabado","Domingo")
tiempo <- c("tiempo platzi","tiempo lecturas","tiempo extra")
colnames(final_matrix) <- dias
rownames(final_matrix) <- tiempo

final_matrix
colSums(final_matrix)```

> final_matrix
                Lunes Martes Miercoles Jueves Viernes Sabado Domingo
tiempo platzi      25      5        10     15      10     30      20
tiempo lecturas    30     10         5     10      15     30      20
> colSums(final_matrix)
    Lunes    Martes Miercoles    Jueves   Viernes    Sabado   Domingo 
       55        15        15        25        25        60        40 

En este caso para agregar una nueva matriz la realize de la siguiente manera

  1. Crear matriz
<matrizFinal <- c(0,0,0,0,0,0,0,0,0)>
  1. Reasignar variable de matriz
<dias<- rbind(dias, matrizFinal)>

Resultado de la ejecucion

<            LUNES MARTES MIERCOLES JUEVES VIERNES SABADO DOMINGO LUNESA MARTESB
ENERO           1      2         3      4       5      6       7      8       9
FEBRERO         1      2         3      4       5      6       7      8       9
matrizFinal     0      0         0      0       0      0       0      0       0>
reto1_final_matrix<-cbind(final_matrix,c(15,10,10))
reto1_final_matrix

dias<-c("lunes","martes","miercoles","jueves","viernes","sabado")
tiempo<-c("tiempo platzi","tiempo lecturas","posdcast")
colnames(reto1_final_matrix)<-dias
rownames(reto1_final_matrix)<-tiempo

reto1_final_matrix

agregando filas:
final_matriz <- rbind(tiempo_matriz,鈥渢iempo extra鈥= c(10,1,15,30,9))
luego agremaos columnas:
final_matriz <- cbind(final_matriz, Sabado = c(1, 2, 3))
resultado:
Lunes . Martes Mieroles Jueves Viernes Sabado
tiempo platzi 25 5 10 15 10 1
tiempo lecturas 30 10 5 10 15 2
tiempo extra 10 1 15 30 9 3

Sabado <-c(10,10,15)
final_matrix <- cbind(final_matrix,Sabado)
final_matrix

Hola Buen d铆a

Comparto impresi贸n del ejericio ( con errores y correcciones ) pues creo que de eso se trata.

Gracias!

final_matriz
                Lunes Martes Miercoles Jueves Viernes
Tiempo Platzi      25      5        10     15      10
Tiempo Lecturas    30     10         5     10      15
                   10     15        30      5       0
> final_matriz1 <- cbind(final_matriz,c(20,15,20)
+ final_matriz
Error: unexpected symbol in:
"final_matriz1 <- cbind(final_matriz,c(20,15,20)
final_matriz"
> final_matriz1
                Lunes Martes Miercoles Jueves Viernes         
tiempo platzi   "25"  "5"    "10"      "15"   "10"    "Sabado"
Tiempo lecturas "30"  "10"   "5"       "10"   "15"    "Sabado"
                "10"  "15"   "30"      "5"    "0"     "Sabado"
> final_matriz1 <- cbind(final_matriz,c(20,15,20))
> final_matriz1
                Lunes Martes Miercoles Jueves Viernes   
Tiempo Platzi      25      5        10     15      10 20
Tiempo Lecturas    30     10         5     10      15 15
                   10     15        30      5       0 20
> dias <c(鈥淟unes鈥, 鈥淢artes鈥, 鈥淢iercoles鈥, 鈥淛ueves鈥, 鈥淰iernes鈥, 鈥淪abado鈥)
Error: unexpected input in "dias <c(鈥"
> dias <- c(鈥淟unes鈥, 鈥淢artes鈥, 鈥淢iercoles鈥, 鈥淛ueves鈥, 鈥淰iernes鈥, 鈥淪abado鈥)
Error: unexpected input in "dias <- c(鈥"
> dias <- c(鈥淟unes鈥, 鈥淢artes鈥, 鈥淢iercoles鈥, 鈥淛ueves鈥, 鈥淰iernes鈥, 鈥淪abado鈥)
Error: unexpected input in "dias <- c(鈥"
> dias
[1] "Lunes"     "Martes"    "Miercoles" "Jueves"    "Viernes"  
> dias < - c(鈥淟unes鈥, 鈥淢artes鈥, 鈥淢iercoles鈥, 鈥淛ueves鈥, 鈥淰iernes鈥, 鈥淪abado鈥)
Error: unexpected input in "dias < - c(鈥"
> dias <- c(鈥淟unes鈥, 鈥淢artes鈥, 鈥淢iercoles鈥, 鈥淛ueves鈥, 鈥淰iernes鈥, 鈥淪abado鈥)
Error: unexpected input in "dias <- c(鈥"
> dias <- c(鈥淟unes鈥, 鈥淢artes鈥, 鈥淢iercoles鈥, 鈥淛ueves鈥, 鈥淰iernes鈥, 鈥淪abado鈥)
Error: unexpected input in "dias <- c(鈥"
> dias
[1] "Lunes"     "Martes"    "Miercoles" "Jueves"    "Viernes"  
> dias <- c("Lunes","Martes","Miercoles","Jueves","Viernes","Sabado")
> tiempo
[1] "Tiempo Platzi"   "Tiempo Lecturas"
> Tiempo
[1] "tiempo platzi"   "Tiempo lecturas"
> tiempo <- c("Tiempo Plazti","Tiempos Lecturas","Postcast")
> 
> colnames(final_matriz1) <- dias
> rownames(final_matriz1) <- tiempo
> 
> final_matriz1
                 Lunes Martes Miercoles Jueves Viernes Sabado
Tiempo Plazti       25      5        10     15      10     20
Tiempos Lecturas    30     10         5     10      15     15
Postcast            10     15        30      5       0     20```

Resumen

#matriz
tiempo_platzi <- c(25,5,10,15,10,0)
tiempo_lecturas <- c(30,10,5,10,15,0)
tiempo_corrida <- c(0,0,0,0,0,30)
tiempo_matrix_con_total <- tiempo_platzi + tiempo_lecturas + tiempo_corrida

tiempo_matrix <- matrix(c(tiempo_platzi,tiempo_lecturas,tiempo_corrida,tiempo_matrix_con_total),
nrow = 4, byrow = TRUE)

dias <- c(鈥淟unes鈥, 鈥淢artes鈥,鈥淢iercoles鈥, 鈥淛ueves鈥,鈥淰iernes鈥,鈥淪abado鈥)
Tiempo <- c(鈥渢iempo platzi鈥,鈥渢iempo lecturas鈥, 鈥淐orrida鈥,鈥淭otal鈥)

colnames(tiempo_matrix) <- dias
rownames(tiempo_matrix) <- Tiempo

tiempo_matrix

Respuesta al reto

> Sabado <-c(15,20,30)
> cbind(final_matrix,Sabado)
                Lunes Martes Miercoles Jueves Viernes Sabado
tiempo platzi      25      5        10     15      10     15
tiempo lecturas    30     10         5     15      15     20
                   10     15        30      5       0     30```

curso_mate <- c (14,15,17,20)
curso_leng <- c(15,18,10,6)
curso_hist <- c(14,15,13,9)

ciclo_I <- matrix(c(curso_mate,curso_leng,curso_hist),nrow = 3,ncol = 4,byrow= TRUE)

ciclo_I

CURSOS <- c(鈥淢atematica鈥,鈥淟eguaje鈥,鈥淗istoria鈥)
UNIDAD <- c(鈥淚鈥,鈥淚I鈥,鈥淚II鈥,鈥淚V鈥)

rownames(ciclo_I) <-CURSOS
colnames(ciclo_I) <- UNIDAD

ciclo_I

fisica <- c(18,14,17,19)
ciclo_I_final <- rbind(ciclo_I, fisica)
ciclo_I_final

ciclo_I_final_I <- cbind(ciclo_I_final, v =c(15,18,17,19))
ciclo_I_final_I

#鈥擜gregar Columnas鈥
#Se crea vector de nueva columna
nueva_columna <- c(20,20,30)
#Se agrega columna 鈥渘ueva_columna鈥 a la matriz existente
final_matriz <- cbind(final_matriz,nueva_columna)
#Se imprime matriz
final_matriz
#Se agrega el elemento 鈥淪abado鈥 al vector de dias
dias <- c(dias,鈥淪abado鈥)
#Se modifica los nombres de columna de la matriz para que incluya el sabado
colnames(final_matriz) <-dias
final_matriz

t_teoria <- c(4,5,6,3,5)
t_practica <-c(3,5,6,7,8)

matriz <- matrix(c(t_teoria,t_practica), ncol = 5, nrow = 2, byrow = TRUE)

colSums(matriz)
rowSums(matriz)

matriz <- cbind(matriz,c(4,3))
matriz <- rbind (matriz,c(2,3,1,2,3,4))

colnames(matriz) <- c(鈥淟unes鈥,鈥淢artes鈥,鈥淢iercoles鈥,鈥淛ueves鈥,鈥淰iernes鈥,鈥淪abado鈥)
rownames(matriz) <- c(鈥淭_Teoria鈥,鈥淭_Practica鈥,鈥淩epaso鈥)

colSums(matriz)
rowSums(matriz)

El ejercicio:

final_matrix <- cbind(final_matrix,c(20,10,30))
final_matrix

final_matrix
Lunes Martes Miercoles Jueves Viernes Sabado
tiempo platzi 25 5 10 15 10 20
tiempo lecturas 30 10 5 10 15 10
tiempo podcast 10 15 30 5 0 30

Env铆o el c贸digo que use para agregar filas y columnas:

Se recomienda renombrar la matriz despu茅s de agregar la primera fila o columna.

驴hay alguna forma de agregar un par谩metro mas a un vector? Tipo si tengo un vector que es:
vector <- c(2,3)
y ahora en ves de ser (2,3) quiero que sea (2,3,4)
驴existe una forma de hacerlo a帽adiendo directamente el par谩metro 4 sin tener que reescribir el vector?
es decir, no quiero hacer esto:
vector <- c(2,3,4)
singo algo como:
vectorNuevo <- funcionMagica(vector, 4)

dias <- c(dias,鈥榮abado鈥,鈥榙omingo鈥)
dias
final_matrix2 <- cbind(final_matrix,c(40,20,30),c(5,5,10))
colnames(final_matrix2) <- dias
final_matrix2

![](

col_sabado <- c(15,10,5)
final_matrix <- cbind(final_matrix, col_sabado)
final_matrix

<code>

Reto

#Comando para agregar una columna, mostrarla y sumar los valores de las columnas
final_matrix2 <- cbind(final_matrix, c(20, 25, 30))
final_matrix2
colSums(final_matrix2)
final_matrix2 <- cbind(final_matrix, c(10,20,30))```
final_matrix <- rbind(tiempo_matrix,c(10,15,30,5,0))

rownames(final_matrix) <- tiempo

final_matrix_2 <- cbind(final_matrix, c(10,10,5))
colnames(final_matrix_2)<- dias 

Cual es el peligro de usar los vectores con " = " ??

New_day_matrix <- cbind(tiempo_matrix,sabado = c(10,10))
New_day_matrix

Podcast_matrix <- rbind(New_day_matrix,"tiempo podcast" = c(10,15,20,30,45,10))
Podcast_matrix

total_matrix <- rbind(Podcast_matrix,"total" = colSums(Podcast_matrix))
total_matrix```

> total_matrix
                Lunes Martes Miercoles Jueves Viernes sabado
tiempo platzi      25      5        10     10      30     10
tiempo lecturas    10      5        10     15      25     10
tiempo podcast     10     15        20     30      45     10
total              45     25        40     55     100     30
# agregar columna a la matrix 

matrixfinalcol <- cbind(MatrixFinal,c(10,15,30))

#agrega etiqueta a la nueva col
colnames(matrixfinalcol)[6]<-"Sabado"

matrixfinalcol```
 #agregar nombre a la nueva fila
 Tiempo <- c("tiempo_platzi","tiempo_lecturas","Podcast")
 rownames(final_matrix) <- Tiempo
 final_matrix
 
 #agregar una nueva colunma a una matriz
 
 final_matrix <- cbind(final_matrix, c(5,2,1))
 final_matrix
 
 #agregar nombre a la nueva columna
 
 dias <- c("Lunes", "Martes", "Mi茅rcoles", "Jueves", "Viernes", "S谩bado")
 colnames(final_matrix) <- dias
 final_matrix```

Reto logrado:

final_plus_matrix <- cbind(final_matrix, c(30,60,20))

colnames(final_plus_matrix) <- c(鈥淟unes鈥, 鈥淢artes鈥, 鈥淢iercoles鈥, 鈥淛ueves鈥, 鈥淰iernes鈥, 鈥淪abado鈥)
row.names(final_plus_matrix) <-c(鈥淧latzi鈥, 鈥淟ectura鈥, 鈥淧odcast鈥)

Por cierto: 驴Alguien sabe como pegar screenshots? la barra de comentarios no me deja y no entiendo lo que me pone cuando doy clic a im谩genes. Salu2

#Agregar mas tiempo de aprendizaje a cada uno de los d铆as llamado Tiempo Podcast:
Tiempo_Adicional_Podcast<- c (10,15,30,5,0)
Final_matrix<- rbind(Tiempo_Matrix, Tiempo_Adicional_Podcast)
Final_matrix

#Agregar un d铆a adicional a la Matriz llamada Final_matrix:
#1- Definici贸n del vector de tiempos para el d铆a sabado
sabado<-c(40,20,10)
#2 - Adici贸n de la columna a la matriz:
Final_matrix_Sabado<-cbind(Final_matrix,sabado)
Final_matrix_Sabado
#3 - Sumatoria
colSums(Final_matrix_Sabado)

![](

Para agregar fila de tiempo_podcast

final_matrix<- rbind(tiempo_de_matrix, tiempo_podcast = c(10,15,30,05,0))
final_matrix

Para agregar columna del d铆a s谩bado

final_matrix1 <- cbind(final_matrix, sabado = c(20,15,10))
final_matrix1

Para ver el total

Total <- colSums(tiempo_matrix)
final_matrix2 <- rbind(final_matrix, total)
final_matrix2

#Creating sabado vector
sabado <- c(20,10,5)
#Naming column
names(sabado) <- 鈥渟abado鈥
#Adding new column
final.matrix <- cbind(final.matrix, sabado )
final.matrix
#Renaming tiempo vector
tiempo <- c(鈥渢iempo platzi鈥, 鈥渢iempo lecturas鈥, 鈥渢iempo podcast鈥)
#Adding row names
rownames(final.matrix) <- tiempo
final.matrix

sabado<-c(20,13,0)
finalito_matrix<-cbind(final_matrix, sabado)
finalito_matrix

Reto!

dias = c("Lunes", "Martes","Miercoles","Jueves","Viernes", 'Sabado')
tiempo = c("tiempo platzi", "tiempo lecturas", "Podcast")

final_matriz = rbind(tiempo_matrix, c(10, 20, 10, 5, 10))
final_matriz = cbind(final_matriz, c(5, 10, 15))

colnames(final_matriz) <- dias
rownames(final_matriz) <- tiempo

final_matriz

Parte del c贸digo para el reto

#Agregar en la matriz una fila para actividad adicional
tiempo_practica <- c(10,15,30,5,0)
final_matrix <- rbind(tiempo_matrix, tiempo_practica)
final_matrix

#Agregar en la matriz la columna con el dia Sabado
Sabado <- c(15,15,50)
final_matrix_sabado <- cbind(final_matrix,Sabado)
final_matrix_sabado

colSums(final_matrix_sabado)

excelente!

final_matrix <- rbind(tiempo_matrix,c(10,15,30,5,0))
final_matrix

colSums(final_matrix)

final_matrix_2 = cbind(final_matrix,c(20,20,20))
final_matrix_2
colnames(final_matrix_2) = c(鈥淟unes鈥,鈥淢artes鈥,鈥淢iercoles鈥,鈥淛ueves鈥,鈥淰iernes鈥,鈥淪abado鈥)
final_matrix_2
row.names(final_matrix_2) = c(鈥1鈥,鈥2鈥,鈥3鈥)
final_matrix_2

隆lo logr茅!
lunes martes mi茅rcoles jueves viernes sabado
tiempo platzi 25 5 10 15 10 20
tiempo lecturas 30 10 5 10 15 30
tiempo podcast 10 15 30 5 0 5

<code>

tiempo_platzi<- c(25,5,10,15,10,20)
tiempo_lecturas<- c(30,10,5,10,15,30)
tiempo_podcast<- c(10,15,30,5,0,5)
tiempo_aprendizaje <- tiempo_platzi + tiempo_lecturas + tiempo_podcast
tiempo_aprendizaje
dias_aprendizaje <- c(鈥渓unes鈥, 鈥渕artes鈥, 鈥渕iercoles鈥, 鈥渏ueves鈥, 鈥渧iernes鈥,鈥渟abado鈥)
dias_aprendizaje
dias_mas_20_min<- c(TRUE, FALSE, FALSE, TRUE, TRUE,FALSE)
dias_mas_20_min
total_tiempo_platzi<- sum(tiempo_platzi)
total_tiempo_platzi
total_tiempo_lecturas<- sum(tiempo_lecturas)
total_tiempo_lecturas
total_tiempo_podcast<- sum(tiempo_podcast)
total_tiempo_podcast
total_tiempo_adicional<- total_tiempo_platzi + total_tiempo_lecturas + total_tiempo_podcast
total_tiempo_adicional

#Matriz
tiempo_matrix<-matrix(c(tiempo_platzi,tiempo_lecturas,tiempo_podcast),nrow=3,byrow=TRUE)
dias <- c(鈥渓unes鈥, 鈥渕artes鈥, 鈥渕iercoles鈥, 鈥渏ueves鈥, 鈥渧iernes鈥, 鈥渟abado鈥)
tiempo <- c(鈥渢iempo platzi鈥, 鈥渢iempo lecturas鈥, 鈥渢iempo podcast鈥)
colnames(tiempo_matrix)<- dias
rownames(tiempo_matrix)<- tiempo
tiempo_matrix

Me aparece este error: Error in dimnames(x) <- dn : la longitud de 鈥榙imnames鈥 [2] no es igual a la extensi贸n del arreglo.

Y ya cheque mi arreglos de los dias y si tiene 6 valores.

驴Que otra cosa podra ser? :S

#forma 1
final_matriz2 <- cbind(final_matriz,c(10,20,15))
final_matriz2


dias2 <- c("Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sabado")
colnames(final_matriz2) <- dias2

final_matriz2


#forma 2

final_matriz3 <- cbind(final_matriz,"Sabado"=c(10,20,15))
final_matriz3```

Utilic茅 este c贸digo para el ejercicio y me funcion贸:

<h3>Ejercicio individual - Agregar el d铆a s谩bado</h3>

final_matriz2 <- cbind(final_matriz,c(10,5,5))
final_matriz2
dias <- c(鈥淟unes鈥, 鈥淢artes鈥, 鈥淢i茅rcoles鈥, 鈥淛ueves鈥, 鈥淰iernes鈥, 鈥淪谩bado鈥)
colnames(final_matriz2) <- dias
final_matriz2

            Lunes Martes Mi茅rcoles Jueves Viernes S谩bado

tiempo platzi 25 5 10 15 10 10
tiempo lecturas 30 10 5 10 15 5
tiempo podcast 10 15 30 5 0 5

#Se adiciona una nueva fila a final_matrix
tiempo_podcast <-c(10,15,30,5,0)
final_matrix <- rbind(tiempo_matriz,tiempo_podcast)
final_matrix

#Se adiciona una nueva columna a final_matrix
Sabado <-c(25,30,10)
final_matrix_II <-cbind(final_matrix,Sabado)
final_matrix_II
# Para agregar una nueva columna se tiene que realizar lo siguiente
final_matriz <- cbind(tiempo_matriz, c(10,10,10))
final_matriz
dias <- c("Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "S谩bado")
colnames(final_matriz) <- dias
final_matriz
# La TRANSPUESTA de una matriz permite convertir filas a columnas

tiempo_matrix <- matrix(c(tiempo_estudio,tiempo_lecturas),nrow = 2, byrow = TRUE)

# Definici貌n de los titulos de las filas y columnas
dias_aprendizaje <- c("Lunes","Martes","Miercoles", "Jueves", "Viernes","Sabado")
descripcion_tipo <- c("Tiempo estudio", "Tiempo lectura","Podcast")

# Asignaci贸n de los titulos
 colnames(tiempo_matrix) <- dias_aprendizaje
 rownames(tiempo_matrix) <- descripcion_tipo
 
 # NOTA: Matriz es diferente a dataframe dado que la matriz debe tener todos sus elementos del mismo tipo
 
 tiempo_matrix

 # Obtener totales por columna
 
 colSums (tiempo_matrix)
 
 # Obtener totales por fila
 
 rowSums (tiempo_matrix)
 
 # Adicionar filas a la matriz:  Se crea una matriz nueva 
 
 tiempo_matrix <- rbind(tiempo_matrix, c(10,15,30,5,0))
 
 # Adicionar columnas en la matriz: Se adiciona el d铆a s谩bado
 
 tiempo_matrix <- cbind(tiempo_matrix, c(10,28,30))```
podcast <- c(10,15,30,5,0)
final_matriz <- rbind(tiempo_matriz, podcast)
final_matriz

sabado <- c(5,5,1)
final_matriz <- cbind(final_matriz, sabado)
final_matriz

Lo hice de esta manera 驴hay alguna forma m谩s sencilla de hacerse ?

final_matrix <- cbind(final_matrix, sabado = c(hora_platzi, hora_lectura))

#agregar una fila (podcast)
tiempo_matriz
final_matrix<-rbind(tiempo_matriz,鈥渢iempo podcast鈥=c(10,15,30,5,0))
final_matrix
#agregar una columna
final_matriz_sabado<-cbind(final_matrix,鈥渟abado鈥=c(7,8,9))
final_matriz_sabado

Con la funcion cbind , agregando filas y columnas, ejercicio completo + reto.

days <- c("Monday","Tuesday","Wednesday","Thursday","Friday")
time <-c("Platzi Time","Time to Read")

platzi_time <- c(8,10,2,3,4)
time_read <- c(2,1.4,3,2,1)

matriz <- matrix(c(platzi_time,time_read), nrow = 2, byrow = TRUE)

colnames(matriz)<- days
rownames(matriz)<-time

matriz <- rbind(matriz,'Relax Time' = c(20,30,20,10,5))
matriz <- cbind(matriz,"Saturday"= c(5,1.5,20))
matriz

A la profesora despu茅s de utilizar rbind le aparece la matriz como sin el nombre de la tercera fila. Al intentarlo yo el reto con cbind tambi茅n me sale sin el nombre de la 煤ltima columna.

C贸mo se pone el nombre en ambas?

Como parte del reto defino la matriz de la siguiente forma y posteriormente la corro:

final_matrix_1 <- cbind(final_matrix, s谩bado=c(20,25,50))
final_matrix_1

en donde cbind() usa como primer argumento la final_matrix que construy贸 la maestra, y el segundo argumento es propiamente el vector columna con la informaci贸n del tiempo destinado a cada actividad, n贸tese que este vector lo he denominado directamente como 鈥榮谩bado鈥

final_matriz2 <-cbind(final_matriz,sabado =c(30,30,0))
final_matriz2

Reto.

#se agregar谩 m谩s tiempo de pr谩ctica de la siguietne manera

final_matrix <- rbind(tiempo_matrix,tiempo_practica = c(10,15,30,5,0))
final_matrix

colSums(final_matrix)

#reto agregar un campo de tiempo adicional y d铆a nuevo s谩bado y sus valores

final_matrix_2 <- cbind(final_matrix,Sabado = c(2,2,2))
final_matrix_2

colSums(final_matrix_2)

y la matriz queda de la siguiente manera:
![](