es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Eliminar comillas del archivo .txt

Tengo un archivo txt con el siguiente tipo de fila:

"Hello I'm in Tensorflow"
"My name is foo"
'Mr "alias" is running'
...

Como se puede ver, solo hay una cadena por fila. Cuando intento crear un tf.data.Dataset, la salida se ve así:

conver = TextLineDataset('path_to.txt')
for utter in conver:
    print(utter)
    break

<h1>tf.Tensor(b'"Hello I'm in Tensorflow"', shape=(), dtype=string)</h1>

Si te fijas, la comilla " todavía está presente al principio y al final de la cadena (además de la definida por el tensor '). Mi resultado deseado sería:
<h1>tf.Tensor(b'Hello I'm in Tensorflow', shape=(), dtype=string)</h1>

Es decir, sin las comillas.
Gracias de antemano.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para eliminar las comillas, puedes usar el método tf.strings.strip para eliminar todos los caracteres especificados al inicio y final de cada cadena de texto. En este caso, puedes usarlo para eliminar los caracteres " y '. Aquí tienes un ejemplo de código:

    conver = TextLineDataset('ruta_a.txt')
    conver = conver.map(lambda x: tf.strings.strip(x, "\"'"))
    for utter in conver:
        print(utter)
    

    Esto dará como salida el resultado deseado:

    tf.Tensor(b'Hola estoy en Tensorflow', shape=(), dtype=string)
    tf.Tensor(b'Mi nombre es foo', shape=(), dtype=string)
    tf.Tensor(b'El Sr. "alias" está corriendo', shape=(), dtype=string)
    ...
    

Comments are closed.