[go: up one dir, main page]

0% encontró este documento útil (0 votos)
40 vistas12 páginas

Ciencia Datos Python Modulo3 U2

Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
40 vistas12 páginas

Ciencia Datos Python Modulo3 U2

Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 12

Unidad 2

CIENCIA DE DATOS CON PYTHON:


RECOLECCIÓN, ALMACENAMIENTO Y PROCESO

Fuente: adobestock/175199100

Autor:
Amaury Giovanni Méndez Aguirre

Certifica: Realiza:
ÍNDICE

Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

Códigos en Python para MongoDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

Agregar datos a una base de Datos en MongoDB . . . . . . . . . . . . . . . . . . . . . . . . . 5

Consultas simples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

Bibliografía . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Introducción

INTRODUCCIÓN

Se debe diferenciar en este proceso


que crear una base de datos y hacer ope-
raciones con ellas son dos cosas aparte.
Para la primera no es necesario desa-
rrollar códigos, pero para la segunda, lo
conveniente es implementar códigos de
Python de bibliotecas específicas como
pymongo.
Códigos en Python para
MongoDB
Agregar datos a una base de Datos en MongoDB

El primer paso será instalar dos librerías especiales, pymongo y dnspython

!pip install pymongo dnspython

pymongo:
Biblioteca de Python con todos los módulos para realizar las
conexiones a las bases de datos MongoDB
dnspython:
Biblioteca de Python que resuelve las conexiones de red con
nombres de dominio

Figura 20

Fuente: propia

5
Ahora nuestro código para conectarnos a nuestra propia base de datos

from pymongo import MongoClient

import json

#creamos nuestra colección

#revisa cambiar la palabra <password> por la contraseña


datos

client = MongoClient(“mongodb+srv://ciencia:datos@cluster0.
ijw85oy.mongodb.net/?retryWrites=true&w=majority”)

#conectar a la colección datos

coleccion = client.ciencia.datos

#cargar el archivo JSON

with open(“notas.json”,encoding=”utf-8”) as archivo:

datosJson = json.load(archivo)

#insertar los datos en la base de datos

coleccion.insert_many(datosJson)

6
Figura 21

Fuente: propia

Al correr este código, recuerda cambiar la palabra


<password> por la contraseña adecuada. Observa que al MongoClient:
código original se le ha hecho un cambio al llamar la clase Clase que permite la conexión a la
.MongoClient( ) suprimiendo la palabra pymongo, ya que base de datos MongoDB

en la primera línea estamos indicando que importamos insert_many:


directamente este método. Como los documentos son los Método de la clase MongoClient
que permite la inserción de varios
registros o filas para nuestra base de datos, es importante registros a la vez, cargados princi-
que éstos estén en formato JSON o que estén en tipo de palmente de objetos o documentos
con formato JSON
diccionario. Usaremos en este ejemplo el archivo notas.
json para cargar los datos. Finalmente, con el método
.insert_many( ) podremos cargar todos los datos del documento JSON

7
Figura 22

Fuente: propia

Si vamos nuevamente a nuestra pantalla de Mongo Atlas, y damos clic en el botón


REFRESH, observarás que los datos ya se encuentran en la nube

Consultas simples

Para realizar consultas, es importante primero que existan datos, luego de ésto, se
puede mantener la conexión o simplemente iniciar una nueva, el código a continua-
ción puede ser una forma de lograr nuevamente la conexión para recuperar los datos
almacenados

8
from pymongo import MongoClient
import json
#creamos nuestra colección
#revisa cambiar la palabra <password> por la contraseña datos
client = MongoClient(“mongodb+srv://ciencia:datos@cluster0.
ijw85oy.mongodb.net/?retryWrites=true&w=majority”)
#conectar a la colección datos
coleccion = client.ciencia.datos
#recuperar todos los datos
datos = coleccion.find()
for d in datos:
print(d)

Figura 23

Fuente: propia

9
El método .find( ) será el encargado de
traer toda la información a nuestro programa.
Ahora, tendremos nuestros datos en un objeto
y podremos realizar el filtrado por medio de
sus claves. Si queremos recuperar los datos
de cada documento por su clave Física, sim-
plemente podremos hacer lo siguiente

find:
Método de la clase MongoClient que permite recuperar
todos los datos de una base de datos y los carga como
objeto pymongo. Pueden ser trabajados como diccio-
narios

Figura 24

Fuente: propia

De esta forma, ya tendremos los datos


recuperados. Por tanto, conviene conocer con
anterioridad la estructura de los datos alma-
cenados, pues su recuperación se realizará
por medio de las claves como si de un objeto
tipo diccionario de Python se tratase

10
Conclusiones

Python ha simplificado en gran medida el


acceso a las bases de datos y en este caso,
a una base de datos NoSQL. Recuerde que la
mejor manera es trabajar con los datos tipo
diccionario o JSON para tener compatibili-
dad con la base de datos MongoDB. Métodos
como .insert_many( ) o .find( ) de la biblioteca
pymongo facilitan al programador la mayoría
de tareas relacionadas con bases de datos.
De esta manera, al recuperar los datos, podrá
trabajarlos con índices de clave como sucede
con los diccionarios para realizar las consul-
tas que se requieran.

Lectura recomendada

Te invito a realizar las siguientes


lecturas complementarias:

• ¿Qué es MongoDB?
MongoDB

• Welcome to the MongoDB


Documentation
MongoDB

11
BIBLIOGRAFÍA

García, J. (2018). Ciencia De Datos. Técnicas Analíticas Y Aprendizaje


Estadístico. Un Enfoque Práctico - Jesús García.pdf [6ng22yvvd2lv]. Idoc.
pub. Recuperado de https://idoc.pub/documents/idocpub-6ng22yvvd2lv.

Python Tutorial. W3schools.com. (2022). Retrieved 31 August 2022, from


https://www.w3schools.com/python/default.asp.

También podría gustarte