Uso de utilidades de carácter general

Pasos previos

La ultima linea de trabajo, a la que por su interes vamos a dedicar el resto del capitulo, con- siste en el empleo de algunas utilidades procedentes del mundo Unix у directamente mane- jables, por tanto, en el sistema operativo Linux у disponibles tambien en MacOS. Todas las que vamos a analizar aqui tienen asimismo versiones para Windows, aunque, en la mayor parte de los casos, sin formar parte de las ya incluidas en el sistema operativo. Quienes utili- cen cualquiera de las versiones de Windows tendran, por tanto, que descargar e instalar cada una de las utilidades que se mencionan a continuacion (desde, por ejemplo, https://source forge.net/projects/gnuwin32/files/ о bien http://gnuwin32.sourceforge.net/packages.html). Existe tambien la posibilidad de descargar un paquete que contiene muchas de las utilidades mas empleadas en el trabajo con textos, сото, por ejemplo, Coreutils for Windows (http:// gnuwin32.sourceforge.net/packages/coreutils.htm) о textutils-bin for Windows (http://gnu win32.sourceforge.net/packages/textutils-bin.htm). El proceso de descarga e instalacion, tanto en la linea de hacerlo con cada programa por separado сото en la de importer todo el paquete, no tiene dificultades. Para asegurarse de que es posible utilizar esos programas desde cualquier directorio es necesario que el subdirectory en que estan instalados figure entre las rutas con acceso generalizado (el path). Una tercera opcion para usuarios de Windows con- siste en instalar Cygwin (www.cygwin.com/install.html), una utilidad con la que, aunque la maquina sigue funcionando en Windows, es posible trabajar con la mayor parte de los programas propios del mundo Unix. Esta ultima posibilidad, aparentemente mas radical, es, sin embargo, la mas rentable a medio у largo plazo, puesto que se hace en una sola operacion, diferencia con toda claridad entre las dos vfas16 у puede ser de interes para trabajos que no se reduzcan a manipular textos о extraer informacion de ellos. Por ultimo, las versiones mas recientes de Windows 10 incluyen la posibilidad de utilizar un kernel Linux (el WSL2), opcion un tanto mas complicada para personas sin conocimientos avanzados de informatica, puesto que su instalacion requiere activar el “modo de desarrollador” del sistema operativo, reservado, en principio, a programadores. Las utilidades que vamos a examinar aquf son las que figuran en la tabla 7.1.

Tabla 7.1 Relacibn de utilidades procedentes del mundo Unix que van a ser utilizadas en este capftulo

Utilidad

Descripcibn

awk

Lenguaje de programacibn que puede ser utilizado a un nivel basico para obtener informacibn elaborada sobre el contenido de ficheros de texto

cut

Devuelve alguna(s) de las columnas de un fichero de texto

grep

Localiza llneas que contienen ciertas secuencias de caracteres

head

Devuelve las primeras llneas de un fichero de texto

iconv

Convierte ficheros de texto de unos formatos de codificacibn a otros

less

Editor de texto

sed

Editor de texto no interactivo que permite hacer sustituciones de cadenas, eliminar llneas con ciertas caracterfsticas, etc.

sort

Ordena las llneas de un fichero de texto

tail

Devuelve las Oltimas llneas de un fichero de texto

tr

Convierte caracteres

uniq

Funde todas las apariciones de una forma en una sola у da su niimero

wc

Devuelve el nbmero de llneas, palabras у caracteres de un fichero de texto

A lo largo del capftulo vamos a trabajar con diferentes textos que, сото es logico, tendran que ser descargados. La opcion mas comoda para trabajar es crear un subdirectorio destinado precisamente a hacer estas practices e ir incorporando ahf los textos у listas con las que vamos a enfrentarnos. Por tanto, la secuencia de operaciones es la siguiente:

  • • Los usuarios de Windows deben tomar la decision de cual de las vias indicadas se va a seguir para poder emplear las utilidades con las que se va a trabajar en este capftulo (des- carga e instalacion de las aplicaciones por separado, descarga e instalacion de un paquete conjunto, descarga e instalacion de Cygwin о habilitacion de WSL2).
  • • Descargar el primer texto con el que se va a trabajar: el Quijote. En el proyecto Gutenberg hay una cantidad importante de textos en espanol (www.gutenberg.org/browse/ languages/es), todos ellos en el dominio publico y, por tanto, con todos los permisos para su descarga у utilizacion personal. El texto complete de las dos partes del Quijote esta en www.gutenberg.org/cache/epub/2000/pg2000.txt. Por supuesto, no es estrictamente necesario trabajar con este texto, pero es aconsejable hacerlo para tener asf una referenda clara у segura con lo que se va a desarrollar aquf у poder contrastar los resultados obtenidos.

Un factor muy importante, que hay que tener en cuenta desde el principio, es que la extraccion de una informacion сото la que se requiere para trabajar en lingufstica de corpus (LC) exige que los documentos esten en formato de texto (piano), lo cual suele indicarse con la extension txt.17 Como se ha indicado en el capftulo 3, eso significa que no tienen las caracterfsticas ni las posibilidades de formato a las que estamos acostumbrados quienes usa- mos regularmente procesadores de texto para escribir nuestros informes, trabajos, etc. (aunque, сото hemos visto tambien, eso no implica que no se pueda codificar esa informacion mediante las marcas SGML, HTML о XML correspondientes).

Despues de descargar el texto (en este caso el de las dos partes del Quijote, que lleva el nombre pg2000.txt), procedemos a abrirlo desde el procesador о editor de texto que utili- cemos habitualmente (no crea problemas abrirlo con un procesador de texto si nos asegura- mos de que luego, en caso de introducir alguna modificacion, lo vamos a guardar tambien en formato texto у no en el formato enriquecido propio del procesador).

El rasgo que hay que comprobar a continuacion se refiere al sistema en que estan codifica- dos los caracteres. Es un punto crucial para este proposito, puesto que la recuperacion de la informacion pasa antes о despues por la identificacion de los caracteres y, por tanto, podria- mos tener problemas si no hay un rnanejo adecuado de los llamados “caracteres especiales" (enes, vocales con tilde, etc.). La version en texto piano del Quijote que ofrece el proyecto Gutenberg en febrero de 2020 esta codificada en UTF-8, que es la opcion mas adecuada para los desarrollos en LC. Buena parte de los procesadores у editores de texto permiten cargar un documento codificado en, por ejemplo, ISO-8859-1 (ISO-LATIN 1) у guardarlo luego en UTF-8 (o, por supuesto, a la inversa).18

Una vez cargado el texto en el procesador у tras haber comprobado que se ven bien los caracteres especiales, podemos hacer alguna comprobacion adicional. Por ejemplo, si se activa la opcion que permite visualizar los caracteres de control podremos ver que cada una de las tineas que aparecen en el texto va seguida del caracter que representa el retorno de carro (habitualmente, el calderon, Я1). No tiene importancia para lo que nos proponemos aquf, pero es importante tener en cuenta que “linea” puede tener dos significados distintos. En el uso mas habitual, una linea de un texto es lo que se ve en un renglon у va seguido de un “retorno blando”, que es lo que hace que las lineas se modifiquen cuando, por ejemplo, anadimos una palabra a lo escrito previamente о la borramos. En los textos que escribimos habitualmente en un procesador, son los parrafos los que terminan en un “retorno duro” y, por tanto, cortan la linea en la que estan у pasan al parrafo siguiente. Esta diferencia entre linea у parrafo no existe en los documentos que estan en formato texto, de modo que “linea” equivale a “parrafo”. Por supuesto, eso no quiere decir que no podamos apreciar visualmente una organizacion del mismo tipo que la que vemos en un procesador ni que no sea posible insertar palabras en lo ya escrito о eliminarlas. La implicacion que interesa aqui es que cuando en las tareas que realizamos con documentos en formato texto hablamos de “lineas”, no nos referimos a los renglones que se pueden ver cuando los abrimos con un editor о un procesador de textos, sino a las secuencias de caracteres que terminan en un retorno duro de carro. |y

Aclaradas estas cuestiones previas podemos comenzar a tratar de obtener informacion que pueda resultar de interes. La primera pregunta puede ser, por ejemplo, la referente al numero de palabras que tiene el Quijote. “Palabra” es, сото se ha visto en varias ocasiones en los capitulos precedentes, un termino equivoco. Evidentemente, aqui solo puede ser interpretado en el sentido de “palabra (orto)grafica”, esto es, una secuencia de caracteres situados entre dos blancos, un bianco у un signo de puntuacion, un signo de puntuacion у un bianco, о dos signos de puntuacion. La mayor parte de los procesadores de texto dan esa informacion. En el que estoy utilizando para escribir este capitulo (la version 6.0.7.3 de LibreOffice para Linux/Ubuntu) dice que el texto tiene 384 262 palabras у 2 117 497 caracteres. Es muy probable que, con este mismo documento, otros procesadores den cifras ligeramente distintas, puesto que ni siquiera la caracterizacion formal que acabo de dar resulta inequivoca.20 Otra pregunta posible se refiere a la presencia de una determinada palabra en el texto. Por ejemplo, puede interesarnos saber si Cervantes utiliza la palabra rabel en el Quijote. Siguiendo el sistema incluido en el procesador que estemos utilizando podremos ver que esa secuencia aparece cinco veces en el texto (cuatro casos de rabel у uno de rabeles). Por supuesto, podemos hacerlo tambien con expresiones formadas por varias palabras. Por ejemplo, podemos com- probar que la secuencia Con la iglesia hemos topado, que se ha convertido en expresion colo- quial, no aparece сото tal en la obra у que la utilizada por don Quijote es, en cambio, Con la iglesia hemos dado.21

Evidentemente, con un procesador (o un editor) de texto es posible realizar algunas de estas tareas que simplifican el trabajo que habrfa que realizar si no dispusieramos del formato electronico. Pero, сото vamos a ver a continuacion, hay herramientas sencillas que pueden llevar a cabo esas tareas у muchas otras, mas complejas, у hacerlo de modo simple у rapido. Antes de pasar a ese punto, vamos a hacer una operacion mas en el procesador. Es facil darse cuenta de que la edicion incluida en el Proyecto Gutenberg tiene el texto completo de las dos partes del Quijote, pero anade unos parrafos de referencia al comienzo у otros de indi- caciones adicionales al final (todos ellos en ingles). Para que el trabajo posterior tenga mas sentido у utilidad, conviene hacer dos tareas antes de dejar el procesador que se este utili- zando. La primera consiste en eliminar los parrafos en ingles que preceden у siguen el texto cervantino. En la segunda, un tanto mas pesada, vamos a recuperar la diferencia entre las dos partes para poder hacer comparaciones con mas comodidad. Se selecciona el texto de cada una de ellas у se guarda, cuidando que sea en formato txt, con un nombre significativo (Quijotel.txt у Quijote2.txt, por ejemplo). Debe conservarse en su formato original el descargado del Proyecto Gutenberg por si es necesario volver a utilizarlo о repetir alguna operacion.

 
Source
< Prev   CONTENTS   Source   Next >