Hola a todos!!
Antes de comenzar les agradezco se suscriban a mi canal de Youtube: https://www.youtube.com/c/sramirez88
Les dejo este ejercicio que nos permita entender, el manejo de estos archivos (Creación, Lectura, Escritura y modificaciones), por lo tanto lo vamos a hacer paso a paso:
Vamos a crear un archivo que nos permita hacer las modificaciones de un archivo principal. Este archivo principal contiene información (Descarga este archivo para que iniciemos):
- El archivo principal.csv contiene información acerca de la venta de vehículos desde el 2020 al 2022, cuyas columnas guardan la siguiente información:
NUMERO, FECHA, MARCA,EDAD, SEXO
- El archivo nuevo lo vamos a crear con 3 columnas (MARCA, EDAD, SEXO), tendrá el nombre: indicador.csv.
ACTIVIDAD:
- ¿Cuántas personas del sexo F compraron Toyota?
- ¿Cuál es el promedio de edades que compraron Renault?
- Ordene el archivo de menor edad a mayor
El archivo creado debe verse así:
CODIGO:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | import csv with open('indicador.csv','w',newline='') as csvfile: #Crear el archivo indicador.csv fieldnames=['MARCA;EDAD;SEXO']#Encabezados writer=csv.DictWriter(csvfile,fieldnames) writer.writeheader()#Crear el encabezado exam1=0 #Variable creada para conteo de compras de TOYOTA sumaEdad=0 #variable creada pasa suma de edad de compras de RENAULT cantidadEdad=0#Variable para conteo de compras de RENAULT archivo=open('principal.csv','r')#Abrir y leer el archivo que tiene la información lines=archivo.read().splitlines()#Divide el archivo en líneas lines.pop(0) #Borra el encabezado data=[]#Se crea una lista para ordenarla e incluirla al archivo indicador.csv for l in lines: linea=l.split(',')#Separa cada dato hasta la ',' #¿Cuántas personas del sexo F compraron Toyota? if linea[4]=='F' and linea[2]=='TOYOTA': exam1 += 1 #¿Cuál es el promedio de edades que compraron Renault? if linea[2]=='RENAULT': sumaEdad += int(linea[3]) cantidadEdad +=1 data.append([linea[2],linea[3],linea[4]]) #Ordene el archivo de menor edad a mayor for i in range (-1,len(data)): for l in range(len(data)): if int(data[l][1])>int(data[i][1]): data[l],data[i]=data[i],data[l] #Ingresamos los datos a indicador.csv, separado por ";") for i in range(len(data)): csvfile.write(str(data[i][0])+";"+str(data[i][1])+";"+str(data[i][2])+"\n") csvfile.close() archivo.close() promedio=sumaEdad/cantidadEdad print("¿Cuántas personas del sexo F compraron Toyota?: ",exam1) print("¿Cuál es el promedio de edades que compraron Renault?: ",promedio) |
RESULTADO:
RETO:
- ¿Cuál fue la marca más vendida en el 2021? Comparte pantallazo del resultado.
Felicitaciones!!! Ya sabes leer, escribir y modificar datos CSV desde Python.
No hay comentarios.:
Publicar un comentario