Data Science do zero: Primeiras regras com o Python



Baixar 5.26 Mb.
Pdf preview
Página71/75
Encontro24.07.2022
Tamanho5.26 Mb.
#24344
1   ...   67   68   69   70   71   72   73   74   75
Data Science do zero - Primeiras regras
for line in sys.stdin:
# se combinar com o regex, escreva-o para o stdout
if re.search(regex, line):
sys.stdout.write(line)
E este é um que conta as linhas recebidas e exibe a contagem:
# line_count.py
import sys
count = 0
for line in sys.stdin:
count += 1
# print vai para sys.stdout
print count
Você poderia usá-los para contar quantas linhas de um arquivo contêm números.
No Windows, você usaria:
type SomeFile.txt | python egrep.py "[0-9]" | python line_count.py
enquanto que no sistema Unix:
cat SomeFile.txt | python egrep.py "[0-9]" | python line_count.py
Este é o caractere pipe |, que significa “use a saída do comando da esquerda
como a entrada do comando da direita”. Você pode construir encadeamentos
(pipelines) elaborados de processamento de dados dessa forma.


Se você está usando o Windows, pode deixar a parte Python fora deste comando:
type SomeFile.txt | egrep.py "[0-9]" | line_count.py
Se você está no sistema Unix, tal comando talvez requeira um pouco mais de trabalho
para ser feito (http://bit.ly/1L2Wgb7).
Igualmente, este script conta as palavras em sua entrada e exibe as mais comuns:
# most_common_words.py
import sys
from collections import Counter
# passa o número de palavras como primeiro argumento
try:
num_words = int(sys.argv[1])
except:
print "usage: most_common_words.py num_words"
sys.exit(1) # código de saída não-zero indica erro
counter = Counter(word.lower() # palavras em minúsculas
for line in sys.stdin #
for word in line.strip().split() # se separam por espaços
if word) # pula as 'palavras' vazias
for word, count in counter.most_common(num_words):
sys.stdout.write(str(count))
sys.stdout.write("\t")
sys.stdout.write(word)
sys.stdout.write("\n")
depois disso, você poderia fazer algo como:
C:\DataScience>type the_bible.txt | python most_common_words.py 10
64193 the
51380 and
34753 of
13643 to
12799 that
12560 in
10263 he
9840 shall
8987 unto
8836 for
Se você for um programador familiarizado com Unix, provavelmente você está
familiarizado com uma grande variedade de ferramentas de linhas de comando (por
exemplo, egrep) que são construídos dentro do seu sistema operacional e
provavelmente vocês as prefere do que construir a sua própria do zero. Ainda assim,


é bom saber que você pode se precisar.


Lendo Arquivos
Você também pode ler a partir de e escrever nos arquivos diretamente no seu
código. Python facilita o trabalho com arquivos.

Baixar 5.26 Mb.

Compartilhe com seus amigos:
1   ...   67   68   69   70   71   72   73   74   75




©historiapt.info 2023
enviar mensagem

    Página principal