Python
 Computer >> コンピューター >  >> プログラミング >> Python

Python3でのテキスト分析


この割り当てでは、ファイルを操作します。ファイルはこの宇宙のいたるところにあります。コンピュータシステムでは、ファイルは重要な部分です。オペレーティングシステムは多くのファイルで構成されています。

Pythonには、テキストファイルとバイナリファイルの2種類のファイルがあります。

Python3でのテキスト分析

ここでは、テキストファイルについて説明します

ここでは、重要な機能のいくつかをファイルに焦点を当てます。

  • 単語数
  • 文字数
  • 平均語長
  • ストップワードの数
  • 特殊文字の数
  • 数値の数
  • 大文字の単語の数

テストファイル「css3.txt」があり、そのファイルに取り組んでいます

単語数

文中の単語数を数えるときは、 splitを使用します 働き。これが最も簡単な方法です。この場合、分割関数も適用します。

サンプルコード

filename="C:/Users/TP/Desktop/css3.txt"
try:
   with open(filename) as file_object:
   contents=file_object.read()
   except FileNotFoundError:
   message="sorry" +filename
   print(message)
else:
   words=contents.split()
   number_words=len(words)
   print("Total words of" + filename ,"is" , str(number_words))

出力

Total words of C:/Users/TP/Desktop/css3.txt is 3574

文字数

ここでは、単語の文字数を数えます。ここでは、単語の長さを使用します。長さが5の場合、その単語には5文字が含まれています。

サンプルコード

filename="C:/Users/TP/Desktop/css3.txt"
try:
   with open(filename) as file_object:
   contents=file_object.read()
   except FileNotFoundError:
   message="sorry" +filename
   print(message)
else:
   words=0
   characters=0
   wordslist=contents.split()
   words+=len(wordslist)
   characters += sum(len(word) for word in wordslist)
   #print(lineno)
   print("TOTAL CHARACTERS IN A TEXT FILE =",characters)

出力

TOTAL CHARACTERS IN A TEXT FILE = 17783

平均語長

ここでは、すべての単語の長さの合計を計算し、それを全長で割ります。

サンプルコード

filename="C:/Users/TP/Desktop/css3.txt"
try:
   with open(filename) as file_object:
   contents=file_object.read()
   except FileNotFoundError:
   message="sorry" +filename
   print(message)
else:
   words=0
   wordslist=contents.split()
   words=len(wordslist)
   average= sum(len(word) for word in wordslist)/words    
   print("Average=",average)

出力

Average= 4.97

ストップワードの数

これを解決するために、PythonでNLPライブラリを使用します。

サンプルコード

from nltk.corpus import stopwords 
from nltk.tokenize import word_tokenize 
my_example_sent = "This is a sample sentence"
mystop_words = set(stopwords.words('english')) 
my_word_tokens = word_tokenize(my_example_sent) 
my_filtered_sentence = [w for w in my_word_tokens if not w in mystop_words] 
my_filtered_sentence = []
for w in my_word_tokens: 
   if w not in mystop_words: 
      my_filtered_sentence.append(w) 
print(my_word_tokens) 
print(my_filtered_sentence) 

特殊文字の数

ここで、そこに存在するハッシュタグまたはメンションの数を計算できます。これは、テキストデータから追加情報を抽出するのに役立ちます。

サンプルコード

import collections as ct
filename="C:/Users/TP/Desktop/css3.txt"
try:
   with open(filename) as file_object:
   contents=file_object.read()
   except FileNotFoundError:
   message="sorry" +filename
   print(message)
else:
   words=contents.split()
   number_words=len(words)
   special_chars = "#"
   new=sum(v for k, v in ct.Counter(words).items() if k in special_chars)
   print("Total Special Characters", new)

出力

Total Special Characters 0

数値の数

ここで、テキストファイルに存在する数値データの数を計算できます。単語の文字数の計算と同じです。

サンプルコード

filename="C:/Users/TP/Desktop/css3.txt"
try:
   with open(filename) as file_object:
   contents=file_object.read()
   except FileNotFoundError:
   message="sorry" +filename
   print(message)
else:
   words=sum(map(str.isdigit, contents.split())) 
   print("TOTAL NUMERIC IN A TEXT FILE =",words)

出力

TOTAL NUMERIC IN A TEXT FILE = 2

大文字の単語数

isupper()関数を使用すると、テキスト内の大文字の数を計算できます。

サンプルコード

filename="C:/Users/TP/Desktop/css3.txt"
try:
   with open(filename) as file_object:
   contents=file_object.read()
   except FileNotFoundError:
   message="sorry" +filename
   print(message)
else:
   words=sum(map(str.isupper, contents.split())) 
   print("TOTAL UPPERCASE WORDS IN A TEXT FILE =",words)

出力

TOTAL UPPERCASE WORDS IN A TEXT FILE = 121

  1. Excel で数値を先行ゼロ付きのテキストに変換する方法

    先行ゼロは、主に数値の長さを指定するのに役立ちます。特別な ID 番号、郵便番号、セキュリティ番号などの記録を維持する場合は、先頭のゼロを維持する必要があります 細胞について。ただし、「00901」のような郵便番号を入力しようとすると、 セル内のプエルトリコの」、Excel はそれを「901」に切り捨てます すぐに。 Microsoft Excel が先行ゼロを処理することは非常に重要です。このためには、数値をテキストに変換する必要があります。この記事では、数値を先行ゼロ付きのテキストに変換する方法について説明します。この記事では、Excel で数値を先行ゼロ付きのテキストに変換する方法を示

  2. Excel で数値を単語に変換する方法 (4 つの適切な方法)

    スプレッドシートは日常業務で多くの人が使用しており、オフィスの重要な要素となっています。大部分の人はスプレッドシートをかなり基本的な方法で使用していますが、一部の上級ユーザーは、数字を単語に変換するのが難しい、または複雑であると感じています。 エクセルで。このガイドでは、この問題に対処し、 4 を提供しました。 数字を単語に変換するさまざまな方法 エクセルで。さらに、3 あります 数値をテキスト形式に変換する方法が増えました。 ワークブックをダウンロード この記事で使用したワークブックを以下からダウンロードして、自分で練習できます。 Excel で数値を単語に変換する 4 つの方法 記事