Trabajar con bases de datos en programación R

Requisito previo: conectividad de base de datos con programación R

En el lenguaje de programación R , se pasan una serie de conjuntos de datos a las funciones para visualizarlos mediante computación estadística. Entonces, en lugar de crear conjuntos de datos una y otra vez en la consola, podemos pasar esos conjuntos de datos normalizados desde bases de datos relacionales.

Bases de datos en lenguaje de programación R

R se puede conectar a muchas bases de datos relacionales, como Oracle, MySQL, SQL Server, etc., y obtiene el resultado como un marco de datos. Una vez que el conjunto de resultados se obtiene en el marco de datos, se vuelve muy fácil visualizarlos y manipularlos. En este artículo, analizaremos MySQl como referencia para conectarse con R, crear, colocar, insertar, actualizar y consultar la tabla mediante el lenguaje R.

Paquete RMySQL

Es un paquete integrado en R y proporciona conectividad entre las bases de datos R y MySql. Se puede instalar con los siguientes comandos:

install.packages("RMySQL")

Conexión de MySQL con el lenguaje de programación R

R requiere el paquete RMySQL para crear un objeto de conexión que toma el nombre de usuario, la contraseña, el nombre de host y el nombre de la base de datos al llamar a la función. La función dbConnect() se usa para crear el objeto de conexión en R.

Sintaxis: dbConnect(drv, usuario, contraseña, dbname, host)
Valores de parámetro: 

  • drv representa el controlador de la base de datos
  • usuario representa nombre de usuario
  • la contraseña representa el valor de la contraseña asignado al servidor de la base de datos
  • dbname representa el nombre de la base de datos
  • host representa el nombre de host

Ejemplo:

R

# Install package
install.packages("RMySQL")
 
# Loading library
library("RMySQL")
 
# Create connection
mysqlconn = dbConnect(MySQL(), user = 'root', password = 'welcome',
                      dbname = 'GFG', host = 'localhost')
 
# Show tables in database
dbListTables(mysqlconn)

Tablas presentes en la base de datos dada: 

Producción: 

Loading required package: DBI
[1] "articles"

Crear tablas en MySQL usando R

Las tablas en MySQL se pueden crear usando la función dbWriteTable() en R. Esta función sobrescribe la tabla si la tabla ya existe.

Sintaxis: dbWriteTable(conexión, nombre, valor)

Valor del parámetro: 

  • conn representa el objeto de conexión
  • nombre representa el nombre de la tabla en MySQL
  • el valor representa el marco de datos que debe presentarse como tabla MySQL

Ejemplo: 

R

# Create connection object
mysqlconn = dbConnect(MySQL(), user = 'root',
                      password = 'welcome',
                      dbname = 'GFG',
                      host = 'localhost')
 
# Create new table mtcars
dbWriteTable(mysqlconn, "mtcars",
             mtcars[1:10, ],
             overwrite = TRUE)

Producción: 

[1] TRUE

Contenido de la tabla de la base de datos: 

Soltar tablas en MySQL usando R

Para realizar otras operaciones además de crear una tabla, se utiliza la función dbSendQuery() para ejecutar una consulta.

Sintaxis: dbSendQuery(conn, declaración)

Valores paramétricos: 

  • conn representa el objeto de conexión
  • la declaración representa la consulta que se ejecutará en MySQL

Ejemplo: 

R

# Create connection object
mysqlconn = dbConnect(MySQL(), user = 'root',
                      password = 'welcome',
                      dbname = 'GFG',
                      host = 'localhost')
 
# Drop table mtcars from database
dbSendQuery(mysqlconn, 'DROP TABLE mtcars')

Producción: 

<MySQLResult:745348760, 3, 5>

Contenido de la base de datos:

Insertar en la tabla en MySQL usando R

Aquí vamos a insertar un valor en una tabla.

Ejemplo: 

R

# Create connection object
mysqlconn = dbConnect(MySQL(), user = 'root',
                      password = 'welcome',
                      dbname = 'GFG', host = 'localhost')
 
# Inserting into articles table
dbSendQuery(mysqlconn, "insert into articles(sno, type)
values(1, 'R language')"
)

Producción: 

<MySQLResult:745348760, 3, 6>

Contenido de la base de datos: 

Actualización de una tabla en MySQL usando R

Aquí vamos a actualizar la tabla en Mysql.

Ejemplo: 

R

# Create connection object
mysqlconn = dbConnect(MySQL(), user = 'root',
                      password = 'welcome',
                      dbname = 'GFG', host = 'localhost')
 
# Update query
dbSendQuery(mysqlconn, "UPDATE articles SET sno = 10 \
where type = 'R language'")

Producción: 

<MySQLResult:-1, 3, 7>

Contenido de la base de datos:

Consultando una tabla en MySQL usando R

Aquí vamos a ver cómo usar la consulta en la tabla.

Ejemplo: 

R

# Create connection object
mysqlconn = dbConnect(MySQL(), user = 'root',
                      password = 'welcome',
                      dbname = 'GFG', host = 'localhost')
 
# Select all rows from articles table
res = dbSendQuery(mysqlconn, "SELECT *FROM articles")
 
# Fetch first 3 rows in data frame
df = fetch(res, n = 3)
print(df)

Producción: 

  sno       type
1   1 Data Struc
2   2       Algo
3   3       Java

Contenido de la base de datos:

Publicación traducida automáticamente

Artículo escrito por utkarsh_kumar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *