Está en la página 1de 8

Instituto Tecnológico de Torreón.

Ing. Informática.

Administración y Organización de Datos 3.


Unidad 3: Organización De Archivos Actuales
Actividad: Ejemplo de CVS

Alumna: Yovana Camacho Ávila.


Maestra: Ing. Dora Ofelia Rodríguez Martínez
3. ORGANIZACION DE ARCHIVOS ACTUALES

Las siglas CSV vienen del inglés "Comma Separated Values" y significan valores
separados por comas. Dicho esto, un archivo CSV es cualquier archivo de texto en el
cual los caracteres están separados por comas, haciendo una especie de tabla en filas
y columnas. Las columnas quedan definidas por cada punto y coma (;), mientras que
cada fila se define mediante una línea adicional en el texto. De esta manera, se
pueden crear archivos CSV con gran facilidad (lo explicamos más adelante). Es por
esto que los archivos .csv están asociados directamente a la creación de tablas de
contenido.

Un archivo CSV suele identificarse con el programa Excel, el cual se basa en


cuadrículas que conforman una tabla en filas y columnas. Lo más común es leer
archivos CSV desde Excel, ya que el programa (aunque no en las versiones más
antiguas) identifica automáticamente los separadores y forma la tabla sin tener que
hacer nada por nuestra parte. Hay distintos separadores, usados con mayor o menor
frecuencia dependiendo de la región en la que estemos. Como las tablas se usan
mayoritariamente para almacenar valores numéricos, hay conflictos entre los formatos
decimales de Europa (que se usan comas) con los separadores de coma. Es por ello
que en Europa suele usarse el punto y coma, mientras que en EEUU y otros países de
habla inglesa suele utilizarse la coma, ya que ello usa el punto como formato decimal.

La facilidad de pasar de una tabla a CSV y viceversa, junto al poco espacio de


almacenamiento y exigencias de cómputo que requieren, hace que estos archivos
sean prácticamente universales, y al identificar Excel los separadores de manera
automática es obvio que todo el mundo relacionado mínimamente con la ofimática y
tareas de productividad esté al tanto de los archivos CSV. De todas formas, no
siempre funciona el identificador automático de separación de Excel, por lo que si
estás en este caso puedes consultar esta guía para abrir correctamente un archivo
CSV en Excel

2
Ejemplo de archivo CSV

Tabla de datos:

Archivo en formato CSV :

marca,año,cilindros,consumo,potencia,aceleración

“chevrolet chevelle malibu”,70,8,18,130,12

“buick skylark 320”,70,8,15,165,11.5

“plymouth satellite”,70,8,18,150,11

“amc rebel sst”,70,8,16,150,12

“ford Torino”,70,8,17,140,10.5

3
Un archivo CSV es un archivo de texto plano en el que los valores se separan por
comas y, normalmente, se entrecomillan. Por ejemplo, lo siguiente sería un archivo
separado por comas:

"Nombre","Apellido1","Apellido2"

"Adolfo","Suárez","González"

"Leopoldo","Calvo-Sotelo","Bustelo"

"Felipe","González","Márquez"

"José María","Aznar","López"

"José Luis","Rodríguez","Zapatero"

En la primera de las filas se pueden escribir los títulos de las columnas, estando
entonces los datos en la fila segunda y siguientes.

Este tipo de archivos, en nuestro caso, lo obtendremos utilizando un programa de hoja


de cálculo (Excel, Open Office, Libre Office) y, a la hora de guardar el archivo, utilizar
la opción “Guardar como CSV” o “Guardar como archivo de valores separados por
comas”.

De todas maneras, a pesar de que podamos usar (y de hecho usemos) un programa


de hoja de cálculo para tratar este tipo de archivos, en puridad no se necesita ningún
programa especial y vale el más elemental programa de tratamiento de texto (notepad,
vi, emacs [1], nano, pico, ed...).

Además de no requerir un software específico, se garantiza la interoperabilidad ya que


los archivos CSV pueden transformarse en otros formatos: los datos pueden
introducirse mediante scripts en bases de datos relacionales, no relacionales,
orientadas a grafos..., pueden generarse archivos en formato RDF, Turtle, N3... En
definitiva, la transformación de los archivos CSV en otro tipo de formato es trivial.

4
Persistencia en archivos CSV

Un formato que suele usarse para transferir datos entre programas es CSV (del inglés
comma separated values: valores separados por comas) es un formato bastante
sencillo, tanto para leerlo como para procesarlo desde el código, se parece al formato
visto en el ejemplo anteriormente.

Nombre,Apellido,Telefono,Cumpleaños

"John","Smith","555-0101","1973-11-24"

"Jane","Smith","555-0101","1975-06-12"

En el ejemplo se puede ver una pequeña base de datos. En la primera línea del
archivo tenemos los nombres de los campos, un dato opcional desde el punto de vista
del procesamiento de la información, pero que facilita entender el archivo.

En las siguientes líneas se ingresan los datos de la base de datos, cada campo
separado por comas. Los campos que son cadenas se suelen escribir entre comillas
dobles, si alguna cadena contiene alguna comilla doble se la reemplaza por \" y una
contrabarra se escribe como \\.

En Python es bastante sencillo procesar de este tipo de archivos, tanto para la lectura
como para la escritura, mediante el módulo csv que ya se encuentra preparado para
eso.

La funciones del ejemplo anterior podría programarse mediante el módulo csv. En el


Código 11.7 se muestra una posible implementación que utiliza este módulo.

Si se prueba este código, se obtiene un resultado idéntico al obtenido anteriormente:

>>> import puntajes_csv

>>> valores = [("Pepe", 108, "4:16"), ("Juana", 2315, "8:42")]

>>> puntajes_csv.guardar_puntajes("puntajes.txt", valores)

>>> recuperado = puntajes_csv.recuperar_puntajes("puntajes.txt")

>>> print recuperado

5
[('Pepe', 108, '4:16'), ('Juana', 2315, '8:42')]

El código, en este caso, es muy similar, ya que en el ejemplo original se hacían muy
pocas consideraciones al respecto de los valores: se asumía que el primero y el
tercero eran cadenas mientras que el segundo necesitaba ser convertido a cadena.

# Código 11.7: puntajes_csv.py: Módulo para guardar y recuperar puntajes en un


archivo que usa csv

#! /usr/bin/env python

# encoding: latin1

import csv

def guardar_puntajes(nombre_archivo, puntajes):

""" Guarda la lista de puntajes en el archivo.

Pre: nombre_archivo corresponde a un archivo válido,

puntajes corresponde a una lista de secuencias de elementos.

Post: se guardaron los valores en el archivo,

separados por comas.

"""

archivo = open(nombre_archivo, "w")

archivo_csv = csv.writer(archivo)

archivo_csv.writerows(puntajes)

archivo.close()

def recuperar_puntajes(nombre_archivo):

""" Recupera los puntajes a partir del archivo provisto.

6
Devuelve una lista con los valores de los puntajes.

Pre: el archivo contiene los puntajes en el formato esperado,

separados por comas

Post: la lista devuelta contiene los puntajes en el formato:

[(nombre1,puntaje1,tiempo1),(nombre2,puntaje2,tiempo2)].

"""

puntajes = []

archivo = open(nombre_archivo, "r")

archivo_csv = csv.reader(archivo)

for nombre, puntaje, tiempo in archivo_csv:

puntajes.append((nombre, int(puntaje), tiempo))

archivo.close()

return puntajes

7
Referencia Bibliográfica
https://support.microsoft.com/es-es/office/crear-o-editar-archivos-csv-para-importarlos-
a-outlook-4518d70d-8fe9-46ad-94fa-1494247193c7
https://www.ibm.com/docs/es/elm/6.0.1?topic=files-csv-format-examples

También podría gustarte