الف نظامی
لائبریرین
مندرجہ ذیل پائتھون سکرپٹ کی مدد سے آپ کسی بھی کارپس یا ٹیکسٹ ڈیٹا فائل سے جملے اخذ کر سکتے ہیں۔
یہ سکرپٹ جملوں میں موجود الفاظ کی تعداد کے لحاظ علیحدہ علیحدہ فائل بناتا ہے۔
مثلا چار لفظوں پر مشتمل جملے علیحدہ فائل میں ہوں گے اور 5 لفظوں پر مشتمل جملے علیحدہ فائل میں۔
متن کو نارملائز کرنے کے لیے اردو ھیک پیکج استعمال کیا گیا ہے جس کو مندرجہ ذیل کمانڈ سے انسٹال کر سکتے ہیں
متن ے جملے اخذ کرنے کا پائتھون سکرپٹ:
استعمال کرنے کا طریقہ:
سکرپٹ میں پاتھ ویری ایبل میں اس فولڈر کا پاتھ لکھنا ہے جہاں آپ کا متن کی فائل یا کارپس موجود ہو
جب کہ فائل نیم ویری ایبل میں اس فائل کا نام جس میں متن موجود ہو یعنی ڈیٹا ڈاٹ ٹی ایکس ٹی
یہ سکرپٹ جملوں میں موجود الفاظ کی تعداد کے لحاظ علیحدہ علیحدہ فائل بناتا ہے۔
مثلا چار لفظوں پر مشتمل جملے علیحدہ فائل میں ہوں گے اور 5 لفظوں پر مشتمل جملے علیحدہ فائل میں۔
متن کو نارملائز کرنے کے لیے اردو ھیک پیکج استعمال کیا گیا ہے جس کو مندرجہ ذیل کمانڈ سے انسٹال کر سکتے ہیں
کوڈ:
pip install urduhack
متن ے جملے اخذ کرنے کا پائتھون سکرپٹ:
Python:
from urduhack.normalization import normalize
from urduhack.tokenization import sentence_tokenizer
def remove_unwanted_characters(text):
unwanted_characters = "ٌّْۭؒؓؐۙۤۚۧٓx#%,?@[]_`{}~¦¨¯´¸¿؛؟٬٬‘’’’’¢£¤¥+<>±«»×÷§©®°µ¶…ۙ؎٭٭۞؏؍nanßþüýÿۗ$&*﴾.0123456789:=;¡ª²³¹º¼½¾ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞĄĆĈĊČĎǺǼàáâãäåæçèéêëìíîïðñòóôõöøùúû!"
translation_table = str.maketrans('', '', unwanted_characters)
cleaned_text = str(text).translate(translation_table)
return cleaned_text
path = "d:\\sentences\\"
filename = "data.txt"
# read data
with open(path + filename, 'r', encoding="utf-8") as f:
lines = f.readlines()
text = ""
for line in lines:
text = text + line
#text normalization
normalized_text = normalize(text)
#sentence tokenization
sentences = sentence_tokenizer(normalized_text)
clean_sentences=[]
#remove unwanted characters
for s in sentences:
clean_sentences.append(remove_unwanted_characters(s))
#remove duplicates
# clean_sentences = list(filter(None, clean_sentences ))
clean_sentences = list(set(clean_sentences))
# write sentence to file based on sentence length
for s in clean_sentences:
s = s.replace("\n\n","")
s = s.replace("\n","")
filename = path + str(len(s.split())).zfill(3) +".txt"
with open(filename, 'a', encoding="utf-8") as f:
f.write(s+"\n")
print("done...")
استعمال کرنے کا طریقہ:
سکرپٹ میں پاتھ ویری ایبل میں اس فولڈر کا پاتھ لکھنا ہے جہاں آپ کا متن کی فائل یا کارپس موجود ہو
کوڈ:
path = "d:\\sentences\\"
کوڈ:
filename = "data.txt"
آخری تدوین: