Off Topic - ¿Cómo puedo crear un programa en modo texto para ver y buscar en CSV?

 
Vista:
Imágen de perfil de leondante

¿Cómo puedo crear un programa en modo texto para ver y buscar en CSV?

Publicado por leondante (1 intervención) el 02/12/2022 08:44:18
Hola a todos. Me trae por aquí una cuestión sencilla para muchos pero no para mí. Agradeceré enormemente cualquier ayuda u orientación, parcial o total que cualquiera me pueda dar.

Necesito crear una aplicación en modo texto capaz de mostrar por páginas el contenido de un CSV sencillo y que me permita buscar y ver las líneas correspondientes a las que tengan en una columna concreta un valor inferior a un número que debo introducir a mano cada vez. Eso es todo.

Pero tengo el problema de que soy el lagarto más ignorante en cuanto a programación que conozco y no tengo ni idea de por dónde empezar, y habiendo ya herramientas muy potentes de ofimática, en internet no hay tutoriales para ello, o al menos no los encuentro.

Tengo hasta el viernes, 9 de diciembre del presente año 2022 para conseguirlo.

Muchísimas gracias al que me pueda decir algo sobre cómo y por dónde empezar. Me da igual el lenguaje a usar o la herramienta. Sólo se me exige que el código pueda ser comprobado antes de compilarlo.

Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro Andrade

¿Cómo puedo crear un programa en modo texto para ver y buscar en CSV?

Publicado por Alejandro Andrade (50 intervenciones) el 29/03/2023 18:57:49
¡Hola, León! Puedes crear un programa en modo texto para ver y buscar en un archivo CSV utilizando cualquier lenguaje de programación que te resulte cómodo. En este caso, te daré un ejemplo en Python.

Para empezar, necesitarás instalar la librería 'pandas', que es una de las más populares para trabajar con datos en Python. Puedes instalarla utilizando el siguiente comando en la terminal o consola:

1
pip install pandas

Una vez que tengas instalada la librería 'pandas', puedes utilizar el siguiente código para cargar el archivo CSV y mostrarlo por páginas:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import pandas as pd
 
# Cargar el archivo CSV en un DataFrame
df = pd.read_csv("archivo.csv")
 
# Definir el número de líneas por página
lineas_por_pagina = 10
 
# Mostrar el DataFrame por páginas
pagina = 0
while True:
    inicio = pagina * lineas_por_pagina
    fin = (pagina + 1) * lineas_por_pagina
    print(df.iloc[inicio:fin])
    respuesta = input("Presione 'Enter' para continuar o escriba 'salir' para terminar: ")
    if respuesta.lower() == "salir":
        break
    pagina += 1

En este ejemplo, el archivo CSV se carga en un DataFrame utilizando la función 'read_csv()' de 'pandas'. Luego, se define el número de líneas por página y se muestra el DataFrame por páginas utilizando un ciclo 'while'. En cada iteración del ciclo, se muestra una página del DataFrame utilizando el método 'iloc[]', que permite seleccionar filas y columnas por su índice numérico. Después, se pide al usuario que presione Enter para continuar o escriba "salir" para terminar. Si el usuario escribe "salir", se sale del ciclo y se termina el programa.

Para buscar las líneas correspondientes a una columna concreta que tenga un valor inferior a un número introducido por el usuario, puedes modificar el código de la siguiente manera:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import pandas as pd
 
# Cargar el archivo CSV en un DataFrame
df = pd.read_csv("archivo.csv")
 
# Definir el número de líneas por página
lineas_por_pagina = 10
 
# Pedir al usuario que introduzca el valor límite
valor_limite = float(input("Introduzca el valor límite: "))
 
# Filtrar el DataFrame por la columna concreta y el valor límite
df_filtrado = df[df["columna_concreta"] < valor_limite]
 
# Mostrar el DataFrame filtrado por páginas
pagina = 0
while True:
    inicio = pagina * lineas_por_pagina
    fin = (pagina + 1) * lineas_por_pagina
    print(df_filtrado.iloc[inicio:fin])
    respuesta = input("Presione 'Enter' para continuar o escriba 'salir' para terminar: ")
    if respuesta.lower() == "salir":
        break
    pagina += 1

En este ejemplo, se pide al usuario que introduzca el valor límite utilizando la función 'input()'. Luego, se filtra el DataFrame por la columna concreta y el valor límite utilizando una expresión booleana en la que se compara la columna concreta con el valor límite. El resultado es un nuevo DataFrame que contiene solo las líneas que cumplen la condición. Finalmente, se muestra el DataFrame filtrado por páginas utilizando el mismo código que en el ejemplo anterior.

Espero que este ejemplo te ayude a empezar con tu programa en modo texto para ver y buscar en un archivo CSV. Ten en cuenta que este es solo un ejemplo en Python y que existen muchas otras formas de lograr lo que estás buscando en otros lenguajes de programación. ¡Buena suerte!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar