Metni Ayrıştırma
Çeşitli / / April 05, 2023
Birkaç bilgisayar programlama dili öğrendiyseniz, metin ayrıştırma terimini duymuş olabilirsiniz. Bu, dosyanın karmaşık veri değerlerini basitleştirmek için kullanılır. Makale, dili kullanarak metni nasıl ayrıştıracağınızı bilmenize yardımcı olur. Buna ek olarak, x metin ayrıştırma hatasıyla karşılaştıysanız, makaledeki ayrıştırma hatasını nasıl düzelteceğinizi bileceksiniz.
![Metni Ayrıştırma](/f/fbb34080b4b5d222b9010c49663eeb36.png)
İçindekiler
- Metni Ayrıştırma
- Metni Ayrıştırma Nedir?
- NLP veya Doğal Dil İşleme
- Metni Ayrıştırma Nedir?
- Metni Ayrıştırmanın Nedenleri Nelerdir?
- Yöntem 1: DataFrame Sınıfı aracılığıyla
- Yöntem 2: Kelime Simgeleştirme Yoluyla
- Yöntem 3: DocParser Sınıfı aracılığıyla
- Yöntem 4: Metni Ayrıştırma Aracı Aracılığıyla
- Yöntem 5: TextFieldParser aracılığıyla (Visual Basic)
- Uzman İpucu: Metni MS Excel Aracılığıyla Ayrıştırma
- Ayrıştırma Hatası Nasıl Onarılır
Metni Ayrıştırma
Bu makalede, metni çeşitli yollarla ayrıştırmak için eksiksiz bir kılavuz gösterdik ve ayrıca metin ayrıştırmaya kısaca bir giriş yaptık.
Metni Ayrıştırma Nedir?
Herhangi bir kod kullanarak metni ayrıştırma kavramlarını öğrenmeden önce. Dilin temellerini ve kodlamayı bilmek önemlidir.
NLP veya Doğal Dil İşleme
Metni ayrıştırmak için Yapay Zeka alanının bir alt alanı olan Doğal Dil İşleme veya NLP'den yararlanılır. Kategoriye ait dillerden biri olan Python dili, metni ayrıştırmak için kullanılır.
NLP kodları, bilgisayarların insan dillerini çeşitli uygulamalara uygun hale getirmek için anlamasını ve işlemesini sağlar. Dile Makine Öğrenimi veya Makine Öğrenimi tekniklerini uygulamak için yapılandırılmamış metin verilerinin yapılandırılmış tablo verilerine dönüştürülmesi gerekir. Ayrıştırma etkinliğini tamamlamak için, program kodlarını değiştirmek için Python dili kullanılır.
Metni Ayrıştırma Nedir?
Metni ayrıştırmak, verileri bir biçimden başka bir biçime dönüştürmek anlamına gelir. Dosyanın kaydedildiği format, kullanıcının çeşitli uygulamalarda kullanabilmesi için ayrıştırılmalı veya farklı bir formatta dosyaya dönüştürülmelidir.
- Başka bir deyişle, süreç, bir dizi veya bir metni analiz etmek ve dosyanın formatını değiştirerek mantıksal bileşenlere dönüştürmek anlamına gelir.
- Bu ortak programlama görevini tamamlamak için Python dilinin bazı kurallarından yararlanılır. Metin ayrıştırılırken, verilen metin dizisi daha küçük bileşenlere bölünür.
Metni Ayrıştırmanın Nedenleri Nelerdir?
Metnin ayrıştırılmasının gerekli olmasının nedenleri bu bölümde verilmektedir ve metnin nasıl ayrıştırılacağını bilmeden önce ön koşul bilgisidir.
- Bilgisayara aktarılan tüm veriler aynı formatta olmayacaktır ve çeşitli uygulamalara göre farklılık gösterebilir.
- Veri biçimleri çeşitli uygulamalar için değişiklik gösterir ve uyumsuz bir kod bu hataya yol açar.
- Tüm veri biçimlerinin verilerini seçmek için tek bir evrensel bilgisayar programı yoktur.
Yöntem 1: DataFrame Sınıfı aracılığıyla
Python dilinin DataFrame Sınıfı, metni ayrıştırmak için gerekli tüm işlevlere sahiptir. Bu yerleşik kitaplık, herhangi bir biçimdeki verileri başka bir biçime ayrıştırmak için gerekli kodları barındırır.
DataFrame Sınıfının Kısa Tanıtımı
DataFrame Sınıfı, veri analiz aracı olarak kullanılan, zengin özelliklere sahip bir veri yapısıdır. Bu, verileri minimum çabayla analiz etmek için kullanılabilen güçlü bir veri analiz aracıdır.
- Kod, analizi Python dilinde gerçekleştirmek için pandaların DataFrame'ine okunur.
- Sınıf, Python veri analistleri tarafından kullanılan pandalar tarafından sağlanan çok sayıda paketle birlikte gelir.
- Bu sınıfın özelliği, NumPy kitaplığının, işlevin dahili işlevselliğinin kullanıcılardan gizlendiği bir kod olan bir soyutlamadır. NumPy kitaplığı, dizilerle çalışmak için komutları ve işlevleri kapsayan bir python kitaplığıdır.
- DataFrame sınıfı, birden çok satır ve sütun dizini içeren iki boyutlu bir dizi oluşturmak için kullanılabilir. Bu indeksler, çok boyutlu verilerin saklanmasına yardımcı olur ve bu nedenle MultiIndex olarak adlandırılır. Ayrıştırma hatasını nasıl düzelteceğinizi bilmek için bunların değiştirilmesi gerekir.
Python dilinin pandaları, x ayrıştırma metnindeki hatayı önlemek için SQL veya veritabanı stili işlemleri en üst düzeyde mükemmellikle gerçekleştirmeye yardımcı olur. Ayrıca CSV, MS Excel, JSON, HDF5 ve diğer veri biçimlerindeki dosyaların analizine yardımcı olan bazı IO araçları içerir.
Ayrıca Oku:Proxy İsteği Denenirken Oluşan Hatayı Düzeltin
DataFrame Sınıfını Kullanarak Metni Ayrıştırma İşlemi
Metnin nasıl ayrıştırılacağını bilmek için, bu bölümde verilen DataFrame Sınıfını kullanan standart işlemi kullanabilirsiniz.
- Giriş verilerinin veri biçimini deşifre edin.
- Gibi verilerin çıktı verilerine karar verin CSV'ler veya Virgülle Ayrılmış Değer.
- Koda list veya dict gibi ilkel bir veri türü yazın.
Not: Kodu boş bir DataFrame üzerine yazmak sıkıcı ve karmaşık olabilir. Pandalar, bu veri türlerinden DataFrame sınıfında veri oluşturmaya izin verir. Dolayısıyla, ilkel veri tipindeki veriler, gerekli veri formatına kolayca ayrıştırılabilir.
- Veri analiz aracı pandas DataFrame'i kullanarak verileri analiz edin ve sonucu yazdırın.
Seçenek I: Standart Format
Herhangi bir dosyayı CSV gibi belirli bir veri biçimiyle biçimlendirmenin standart yöntemi burada açıklanmaktadır.
- Dosyayı veri değerleriyle yerel olarak PC'nize kaydedin. Örneğin, dosyayı adlandırabilirsiniz veri.txt.
- Dosyayı pandas'ta belirli bir adla içe aktarın ve verileri başka bir değişkene aktarın. Örneğin, dilin pandaları isme aktarılır. pd verilen kodda.
- İçe aktarma, girdi dosyasının adının, işlevin ve girdi dosyası biçiminin ayrıntılarını içeren eksiksiz bir koda sahip olmalıdır.
Not: Burada adı geçen değişken res gerçekleştirmek için kullanılır Okumak dosyadaki verilerin işlevi veri.txt ithal edilen pandaları kullanarak pd. Giriş metninin veri formatı, CSV'ler biçim.
- Adlandırılmış dosya türünü çağırın ve ayrıştırılan metni yazdırılan sonuçta analiz edin. Örneğin, komut res komut satırı yürütmesinden sonra, ayrıştırılmış metnin yazdırılmasına yardımcı olacaktır.
Yukarıda açıklanan işlem için örnek bir kod aşağıda verilmiştir ve metnin nasıl ayrıştırılacağını anlamanıza yardımcı olacaktır.
pandaları pd olarak içe aktarres = pd.read_csv('data.txt')res
Bu durumda, dosyaya veri değerlerini girerseniz veri.txt örneğin [1,2,3], ayrıştırılır ve şu şekilde görüntülenir: 1 2 3.
Seçenek II: String Yöntemi
Eğer koda verilen metin sadece karakter dizileri veya alfa karakterleri içeriyorsa, dizideki virgül, boşluk vb. özel karakterler metni ayırmak ve ayrıştırmak için kullanılabilir. İşlem, yaygın dahili dize işlemlerine benzer. Ayrıştırma hatasını nasıl düzelteceğinizi bulmak için, aşağıda açıklanan bu seçeneği kullanarak metni ayrıştırma işlemini izlemeniz gerekir.
- Veriler dizeden çıkarılır ve metni ayıran tüm özel karakterler not edilir.
Örneğin, aşağıda verilen kodda, dizedeki özel karakterler benim_dizem, hangileri, ',' Ve ':’ tanımlanır. Ayrıştırma metninde x hatasını önlemek için bu işlem dikkatli bir şekilde yapılmalıdır.
- Dizedeki metin, özel karakterlerin değerlerine ve konumlarına göre ayrı ayrı bölünür.
Örneğin, dize, split komutu kullanılarak tanımlanan özel karakterlere dayalı olarak metin veri değerlerine bölünür.
- Dizenin veri değerleri, ayrıştırılmış metin olarak tek başına yazdırılır. Burada, Yazdır ifade, metnin ayrıştırılmış veri değerini yazdırmak için kullanılır.
Yukarıda açıklanan işlem için örnek kod aşağıda verilmiştir.
my_string = 'İsimler: Teknoloji, bilgisayar'sfinal = [my_string.split(':')[1].split(',')] içindeki ad için [name.strip()]print(“İsimler: {}”.format (sfinal))
Bu durumda, ayrıştırılan dizenin sonucu aşağıda gösterildiği gibi görüntülenecektir.
İsimler: ['Teknoloji', 'bilgisayar']
Daha iyi netlik elde etmek ve dize metnini kullanırken metnin nasıl ayrıştırılacağını öğrenmek için, bir için döngü kullanılır ve kod aşağıdaki gibi değiştirilir.
my_string = 'İsimler: Teknoloji, bilgisayar's1 = my_string.split(':')s2 = s1[1]s3 = s2.split(',')s4 = [s3'teki isim için isim.strip()]idx için, numaralandırılan öğe([s1, s2, s3, s4]):print(“Adım {}: {}”.format (idx, öğe))
![piton kodu](/f/e7f14ac03339eb43bf2711b8123e9111.png)
Bu adımların her biri için ayrıştırılan metnin sonucu aşağıda gösterildiği gibi görüntülenir. Adım 0'da dizenin özel karaktere göre ayrıldığını not edebilirsiniz. : ve metin verisi değerleri, sonraki adımlarda karaktere göre ayrılır.
Adım 0: ['İsimler', 'Teknoloji, bilgisayar']1. Adım: Teknoloji, bilgisayar2. Adım: ['Teknoloji', 'bilgisayar']3. Adım: ['Teknoloji', 'bilgisayar']
Seçenek III: Karmaşık Dosyayı Ayrıştırma
Çoğu durumda, ayrıştırılması gereken dosya verileri, değişen veri türleri ve veri değerleri içerir. Bu durumda, daha önce açıklanan yöntemleri kullanarak dosyayı ayrıştırmak zor olabilir.
Dosyadaki karmaşık verileri ayrıştırmanın özellikleri, veri değerlerinin tablo biçiminde görüntülenmesini sağlamaktır.
- Değerlerin Başlığı veya Meta verileri dosyanın en üstüne yazdırılır,
- Değişkenler ve alanlar çıktıda tablo şeklinde yazdırılır ve
- Veri değerleri bir bileşik anahtar oluşturur.
Bu yöntemde metnin nasıl ayrıştırılacağını öğrenmeye geçmeden önce, birkaç temel kavramı öğrenmek gerekir. Veri değerlerinin ayrıştırılması, normal ifadelere veya Regex'e göre yapılır.
Normal İfade Kalıpları
Ayrıştırma hatasını nasıl düzelteceğinizi bilmek için, ifadelerdeki normal ifade kalıplarının doğru olduğundan emin olmalısınız. Dizelerin veri değerlerini ayrıştırma kodu, bu bölümde aşağıda listelenen yaygın Normal İfade kalıplarını içerecektir.
- '\D': dizedeki ondalık basamakla eşleşir,
- '\S': boşluk karakteriyle eşleşir,
- "\w": alfasayısal karakterle eşleşir,
- ‘+’ veya ‘*’: dizelerdeki bir veya daha fazla karakteri eşleştirerek açgözlü bir eşleşme gerçekleştirir,
- "a-z": metin veri değerlerindeki küçük harf gruplarını eşleştirir,
- A'dan Z'ye veya "a-z": dizenin büyük ve küçük harf gruplarıyla eşleşir ve
- ‘0-9’: sayısal değerlerle eşleşir.
Düzenli ifadeler
Düzenli ifade modülleri, Python dilindeki pandas paketinin önemli bir parçasıdır ve yanlış bir re, x ayrıştırma metninde bir hataya yol açabilir. İfadedeki dizi desenini bulmak için Python'un içine gömülü küçük bir dildir. Normal İfadeler veya Normal İfadeler, özel sözdizimine sahip dizelerdir. Kullanıcının, dizilerdeki değerlere göre diğer dizilerdeki kalıpları eşleştirmesine izin verir.
Normal ifade, veri türüne ve dizedeki ifadenin gereksinimlerine göre oluşturulur, örneğin: Dize = (.*)\n. Normal ifade, her ifadede kalıptan önce kullanılır. Normal ifadelerde kullanılan semboller aşağıda listelenmiştir ve metnin nasıl ayrıştırılacağını bilmenize yardımcı olacaktır.
- .: verilerden herhangi bir karakteri almak için,
- *: önceki ifadeden sıfır veya daha fazla veri kullanın,
- (.*): normal ifadenin bir bölümünü parantez içinde gruplandırmak için,
- \N: Kodda satırın sonunda yeni bir satır karakteri oluşturun,
- \D: 0 ila 9 aralığında kısa bir tamsayı değeri oluşturun,
- +: önceki ifadeden bir veya daha fazla veri kullanın ve
- |: mantıksal bir ifade oluşturun; için kullanılır veya ifade.
Normal İfade Nesneleri
RegexObject, derleme işlevi için bir dönüş değeridir ve ifade eşleşme değeriyle eşleşirse bir MatchObject döndürmek için kullanılır.
1. MatchObject
MatchObject öğesinin Boolean değeri her zaman True olduğundan, bir eğer nesnedeki pozitif eşleşmeleri tanımlamak için ifade. kullanılması durumunda eğer ifadesinde, indeksin başvurduğu grup, ifadedeki nesnenin eşleşmesini bulmak için kullanılır.
- grup() bir veya daha fazla eşleşme alt grubunu döndürür,
- grup (0) tüm maçı döndürür,
- grup 1) ilk parantez içindeki alt grubu döndürür ve
- Birden çok gruba atıfta bulunurken, python'a özgü bir uzantı kullanmalıyız. Bu uzantı, eşleşmenin bulunması gereken grubun adını belirtmek için kullanılır. Spesifik uzantı, parantez içindeki grup içinde sağlanır. Örneğin, ifade, (?P
normal ifade1) adıyla belirli bir gruba atıfta bulunur grup 1 ve normal ifadedeki eşleşmeyi kontrol edin, normal ifade1. Ayrıştırma hatasını nasıl düzelteceğinizi öğrenmek için, grubun doğru işaretlenip işaretlenmediğini kontrol etmelisiniz.
2. MatchObject Yöntemleri
Metnin nasıl ayrıştırılacağını bulurken, MatchObject'in aşağıda listelenen iki temel yöntemi olduğunu bilmek önemlidir. Belirtilen ifadede MatchObject bulunursa örneğini döndürür, aksi takdirde Yok'u döndürür.
- bu eşleşme (dize) yöntem, normal ifadenin başındaki dizenin eşleşmelerini bulmak için kullanılır ve
- bu Arama dizisi) yöntemi, normal ifadedeki bir eşleşmenin konumunu bulmak için dizeyi taramak için kullanılır.
Normal İfade İşlevleri
Normal İfade İşlevleri, kullanıcı tarafından sağlanan veri değerleri kümesinden belirtilen belirli bir işlevi gerçekleştirmek için kullanılan kod satırlarıdır.
Not: İşlevleri yazmak için, x ayrıştırma metnindeki hatayı önlemek için normal ifadeler için ham dizeler kullanılır. Bu, alt simgeyi ekleyerek yapılır. R ifadedeki her kalıptan önce.
İfadelerde kullanılan ortak işlevler aşağıda açıklanmıştır.
1. re.findall()
Bu işlev, bir eşleşme bulunursa dizedeki tüm kalıpları döndürür ve eşleşme bulunmazsa boş bir liste döndürür. Örneğin, işlev, string = re.findall('[aeiou]', regex_filename) dosya adındaki sesli harfleri bulmak için kullanılır.
2. yeniden.bölünmüş()
Bu işlev, boşluk gibi belirtilen bir karakterle eşleşme olması durumunda dizeyi bölmek için kullanılır. Eşleşme bulunamazsa boş bir dizi döndürür.
3. yeniden.sub()
İşlev, eşleşen metni verilen değiştirme değişkeninin içeriğiyle değiştirir. Diğer fonksiyonların aksine eğer herhangi bir örüntü bulunamazsa orijinal diziye geri döner.
4. araştırma()
Metnin nasıl ayrıştırılacağını öğrenmeye yardımcı olan temel işlevlerden biri arama işlevidir. Dizedeki deseni aramaya ve eşleşen nesneyi döndürmeye yardımcı olur. Arama, eşleşmeyi belirlemede başarısız olursa, hiçbir değer döndürülmez.
5. yeniden derleme (desen)
Bu işlev, düzenli ifade kalıplarını daha önce tartışılan bir RegexObject'e derlemek için kullanılır.
Diğer gereklilikler
Listelenen gereksinimler, ileri düzey programcılar tarafından veri analizinde kullanılan ek bir özelliktir.
- Normal ifadeyi görselleştirmek için, normal ifade kullanılır ve
- Normal ifadeyi test etmek için, regex101 kullanıldı.
Ayrıca Oku:Windows 10'da NumPy Nasıl Kurulur?
Metni Ayrıştırma Süreci
Bu karmaşık seçenekte metni ayrıştırma yöntemi aşağıda verildiği gibi açıklanmıştır.
- En önemli adım, dosyanın içeriğini okuyarak giriş biçimini anlamaktır. Örneğin, açık Ve Okumak() isimli dosyanın içeriğini açıp okumak için fonksiyonlar kullanılır. örnek. bu örnek dosya, dosyanın içeriğini içerir dosya.txt; ayrıştırma hatasının nasıl düzeltileceğini öğrenmek için dosyanın tamamen okunması gerekir.
- Dosyanın içeriği, değerlerin meta verilerini bulmak için verileri manuel olarak analiz etmek üzere yazdırılır. Burada, Yazdır() içeriğini yazdırmak için kullanılır. örnek dosya.
- Metni ayrıştırmak için gerekli veri paketleri koda aktarılır ve daha fazla kodlama için sınıfa bir ad verilir. Burada, düzenli ifadeler Ve pandalar ithal edilmektedir.
- Kod için gerekli olan düzenli ifadeler, regex kalıbı ve regex işlevi dahil edilerek dosyada tanımlanır. Bu, metin nesnesinin veya derlemin veri analizi için kodu almasına izin verir.
- Metnin nasıl ayrıştırılacağını öğrenmek için burada verilen örnek koda başvurabilirsiniz. bu derlemek() işlev, dizeyi gruptan derlemek için kullanılır stringname1 dosyanın dosya adı. Normal ifadedeki eşleşmeleri kontrol etme işlevi komut tarafından kullanılır. ief_parse_line (satır),
- Kod için satır ayrıştırıcı kullanılarak yazılır def_parse_file (dosyayolu), burada tanımlanan işlev, belirtilen işlevdeki tüm normal ifade eşleşmelerini kontrol eder. Burada, normal ifade aramak() yöntem anahtarı arar rx dosyanın içinde dosya adı ve eşleşen ilk düzenli ifadenin anahtarını ve eşleşmesini döndürür. Adımla ilgili herhangi bir sorun, x ayrıştırma metninde bir hataya yol açabilir.
- Bir sonraki adım, dosya ayrıştırıcı işlevini kullanarak bir Dosya Ayrıştırıcı yazmaktır. def_parse_file (dosyayolu). Kodun verilerini toplamak için boş bir liste oluşturulur. veri = [], eşleşme her satırda tarafından kontrol edilir eşleşme = _parse_line (satır)ve veri türüne göre tam değer verisi döndürülür.
- Tablonun sayısını ve değerini çıkarmak için, komut line.strip().split(',') kullanıldı. bu sıra{} komutu, veri satırıyla bir sözlük oluşturmak için kullanılır. bu data.append (satır) Komut, verileri anlamak ve tablo biçiminde ayrıştırmak için kullanılır.
Komuta veri = pd. Veri Çerçevesi (veri) dict değerlerinden bir panda DataFrame oluşturmak için kullanılır. Alternatif olarak, aşağıda belirtilen ilgili amaç için aşağıdaki komutları kullanabilirsiniz.
- data.set_index(['dize', 'integer'], inplace=True) Tablonun indeksini ayarlamak için.
- data = data.groupby (seviye=data.index.names).birinci() nans'ı birleştirmek ve kaldırmak için.
- data = data.apply (pd.to_numeric, hatalar='ignore') puanı kayan değerden tamsayı değerine yükseltmek için.
Metnin nasıl ayrıştırılacağını bilmenin son adımı, if ifadesi değerleri bir değişkene atayarak veri ve kullanarak yazdırma yazdır (veri) emretmek.
Yukarıdaki açıklama için örnek kod burada verilmiştir.
örnek olarak open('file.txt') ile:sample_contents = sample.read()yazdır (örnek_içerikler)yeniden içe aktarpandaları pd olarak içe aktarrx_dosyaadı = {"dize1": yeniden derleme (r "dize = (?,*)\N'),
}ief_parse_line (satır):anahtar için, rx_filename.items() içindeki rx:eşleşme = rx.search (satır)eşleşirse:dönüş anahtarı, maçHiçbiri, Hiçbiridef ayrıştırma_dosyası (dosya yolu):veri = []file_object olarak açık (filepath, 'r') ile:satır = dosya_object.readline()satır sırasında:anahtar, eşleşme = _parse_line (satır)key == 'string1' ise:string = match.group('string1')tamsayı = int (string1)value_type = match.group('string1')satır = dosya_object.readline()line.strip() sırasında:sayı, değer = line.strip().split(',')değer = değer.şerit()satır = {"Veri1": dizi1,'Veri2': sayı,değer_türü: değer}data.append (satır)satır = dosya_object.readline()satır = dosya_object.readline()veri = pd. Veri Çerçevesi (veri)veri döndürme_ _name_ _ = = '_ _main_ _' ise:dosyayolu = 'örnek.txt'veri = ayrıştırma (dosya yolu)yazdır (veri)
![piton kodu düzenli ifade işlevleri](/f/910df6bb4bc7908feacf4c8adca477b4.png)
Yöntem 2: Kelime Simgeleştirme Yoluyla
Bir metni veya derlemi belirli kurallara dayalı olarak belirteçlere veya daha küçük parçalara dönüştürme işlemine Simgeleştirme denir. Ayrıştırma hatasını nasıl düzelteceğinizi öğrenmek için, koddaki kelime belirteci komutlarını analiz etmek önemlidir. Normal ifadeye benzer şekilde, bu yöntemde kendi kuralları oluşturulabilir ve konuşmanın bölümlerinin eşlenmesi gibi metin ön işleme görevlerinde yardımcı olur. Ayrıca ortak kelimeleri bulma ve eşleştirme, metin temizleme, duygu analizi gibi ileri metin analizi teknikleri için veriyi hazır hale getirme gibi işlemler de bu yöntemde gerçekleştirilir. Belirteçlendirme uygun değilse, x ayrıştırma metninde hata oluşabilir.
NLTK Kitaplığı
Süreç, birçok NLP işini gerçekleştirmek için zengin bir dizi işleve sahip olan NLTK adlı popüler dil araç seti kitaplığının yardımını alır. Bunlar, Pip veya Pip Kurulum Paketleri aracılığıyla indirilebilir. Metnin nasıl ayrıştırılacağını bilmek için, varsayılan olarak kitaplığı içeren Anaconda dağıtımının temel paketini kullanabilirsiniz.
Belirteçleştirme Biçimleri
Bu yöntemin yaygın biçimleri, sözcük belirteçleştirme ve cümle belirteçleştirmedir. Sözcük düzeyinde belirteç sayesinde, ilki yalnızca bir kez bir sözcük yazdırırken, ikincisi sözcüğü cümle düzeyinde yazdırır.
Metni Ayrıştırma Süreci
- NLTK araç seti kitaplığı içe aktarılır ve simgeleştirme formları kitaplıktan içe aktarılır.
- Bir dize verilir ve belirteçleştirmeyi gerçekleştirmek için komutlar verilir.
- Dize yazdırılırken, çıktı şöyle olur: bilgisayar kelimedir.
- Sözcük belirteci durumunda veya word_tokenize(), cümledeki kelimelerin her biri ayrı ayrı yazdırılır. ‘’ ve bir ile ayrılır virgül. Komutun çıktısı şu olacaktır: 'bilgisayar', 'is', 'the', 'word', '.'
- Cümle belirtme durumunda veya sent_tokenize(), tek tek cümleler ‘’ ve kelime tekrarına izin verilir. Komutun çıktısı şöyle olacaktır: "bilgisayar kelimedir."
Yukarıda belirteçleştirme adımlarını açıklayan kod burada verilmiştir.
nltk'yi içe aktarnltk.tokenize'den içe aktarma sent_tokenize, word_tokenizestring = "bilgisayar kelimedir."yazdır (dize)yazdır (word_tokenize (dize))yazdır (sent_tokenize (dize))
![piton kodu nltk](/f/ad09dde58b31935ff89e15b417a9cf9c.png)
Ayrıca Oku:JavaScript Nasıl Onarılır: geçersiz (0) Hatası
Yöntem 3: DocParser Sınıfı aracılığıyla
DataFrame Sınıfına benzer şekilde, Koddaki metni ayrıştırmak için DocParser Sınıfı kullanılabilir. Sınıf, filepath ile ayrıştırma işlevini çağırmanıza izin verir.
Metni Ayrıştırma Süreci
DocParser Sınıfını kullanarak metnin nasıl ayrıştırılacağını öğrenmek için aşağıda verilen talimatları izleyin.
- bu get_format (dosya adı) işlev, dosya uzantısını ayıklamak, işlev için ayarlanmış bir değişkene döndürmek ve sonraki işleve geçirmek için kullanılır. Örneğin, p1 = get_format (dosya adı) dosya uzantısını ayıklayacaktı dosya adı, değişkene ayarlayın p1, ve sonraki işleve geçirin.
- Diğer işlevlerle mantıksal bir yapı, kullanılarak oluşturulur. if-elif-else ifadeler ve işlevler.
- Dosya uzantısı geçerliyse ve yapı mantıklıysa, get_parser işlevi, dosya yolundaki verileri ayrıştırmak ve dize nesnesini kullanıcıya döndürmek için kullanılır.
Not: Ayrıştırma hatasını nasıl düzelteceğinizi bilmek için bu işlevin doğru şekilde uygulanması gerekir.
- Veri değerlerinin ayrıştırılması, dosyanın dosya uzantısı ile yapılır. Sınıfın somut uygulaması, hangileri parse_txt veya parse_docx verilen dosya türünün parçalarından dize nesneleri oluşturmak için kullanılır.
- Ayrıştırma, aşağıdakiler gibi diğer okunabilir uzantılara sahip dosyalar için yapılabilir: ayrıştırma_pdf, ayrıştırma_html, Ve parse_pptx.
- Veri değerleri ve arabirim, import ifadeleriyle uygulamalara aktarılabilir ve bir DocParser nesnesini başlatabilir. Bu, Python dilindeki dosyaları ayrıştırarak yapılabilir, örneğin: parse_file.py. X ayrıştırma metninde hata olmaması için bu işlemin dikkatli bir şekilde yapılması gerekir.
Yöntem 4: Metni Ayrıştırma Aracı Aracılığıyla
Metni Ayrıştır aracı, değişkenlerden belirli verileri çıkarmak ve bunları diğer değişkenlerle eşlemek için kullanılır. Bu, bir görevde kullanılan diğer araçlardan bağımsızdır ve değişkenleri tüketmek ve çıktısını almak için BPA Platform aracı kullanılır. erişmek için burada verilen bağlantıyı kullanın Çevrimiçi Metin Aracını Ayrıştır ve metnin nasıl ayrıştırılacağı konusunda daha önce verilen cevapları kullanın.
![Metni Ayrıştırma aracı](/f/fc715ec10b3baa7a0426d13f4a50a143.png)
Yöntem 5: TextFieldParser aracılığıyla (Visual Basic)
TextFieldParser, yapılandırılmış ve sınırlandırılmış çok büyük dosyaları ayrıştırmak ve işlemek için nesneleri kullandı. Günlük dosyaları veya eski veritabanı bilgileri gibi metnin genişliği ve sütunu bu yöntemde kullanılabilir. Ayrıştırma yöntemi, kodu bir metin dosyası üzerinde yinelemeye benzer ve esas olarak dize işleme yöntemlerine benzer metin alanlarını ayıklamak için kullanılır. Bu, virgül veya sekme alanı gibi tanımlanmış sınırlayıcıyı kullanarak çeşitli genişliklerdeki ayrılmış dizeleri ve alanları simgelemek için yapılır.
Metni Ayrıştırma İşlevleri
Bu yöntemde metni ayrıştırmak için aşağıdaki işlevler kullanılabilir.
- Bir sınırlayıcı tanımlamak için, Sınırlayıcıları Ayarla kullanıldı. Örneğin, komut testOkuyucu. Sınırlayıcıları Ayarla (vbTab) ayarlamak için kullanılır sekme sınırlayıcı olarak boşluk.
- Bir alan genişliğini pozitif bir tamsayı değerine, metin dosyalarının sabit bir alan genişliğine ayarlamak için şunu kullanabilirsiniz: testOkuyucu. SetFieldWidths (tamsayı) emretmek.
- Metnin alan türünü test etmek için aşağıdaki komutu kullanabilirsiniz. testOkuyucu. TextFieldType = Microsoft. Visual Basic. FileIO.FieldType. Sabit genişlik.
MatchObject'i Bulma Yöntemleri
Kodda veya ayrıştırılmış metinde MatchObject'i bulmanın iki temel yöntemi vardır.
- İlk yöntem, formatı tanımlamak ve dosya boyunca döngü oluşturmaktır. Okuma Alanları yöntem. Bu yöntem, kodun her satırının işlenmesine yardımcı olur.
- bu PeekChars yöntemi, okumadan önce her alanı ayrı ayrı kontrol etmek, birden fazla biçim tanımlamak ve tepki vermek için kullanılır.
Her iki durumda da, ayrıştırma yapılırken veya metnin nasıl ayrıştırılacağını bulurken bir alan belirtilen formatla eşleşmezse, bir alan MalformedLineException istisna döndürülür.
Uzman İpucu: Metni MS Excel Aracılığıyla Ayrıştırma
Metni ayrıştırmak için son ve basit bir yöntem olarak, Excel sekmeyle ayrılmış ve virgülle ayrılmış dosyalar oluşturmak için ayrıştırıcı olarak kullanın. Bu, ayrıştırılan sonucunuzu çapraz kontrol etmenize ve ayrıştırma hatasını nasıl düzelteceğinizi bulmanıza yardımcı olur.
1. Kaynak dosyadaki veri değerlerini seçin ve Ctrl + C tuşları birlikte dosyayı kopyalamak için.
2. Aç excel Windows arama çubuğunu kullanarak uygulama.
![Microsoft Excel uygulamasını açın](/f/7aeeec3b68fe381a208b50f5094b16e0.png)
3. Tıkla A1 hücreye basın ve Ctrl + V tuşları kopyalanan metni yapıştırmak için aynı anda
4. seçin A1 hücreye git Veri sekmesine tıklayın ve Sütunlara metin seçeneği Veri Araçları bölüm.
![Veri sekmesine gidin ve Metinden sütunlara seçeneğini tıklayın](/f/99e71826bd7740b1035f7cec65358c69.png)
5A. seçin sınırlandırılmış seçenek eğer bir virgül veya sekme boşluk ayırıcı olarak kullanılır ve üzerine tıklayın Sonraki Ve Sona ermek düğmeler.
![Ayırıcı olarak virgül veya sekme alanı kullanılıyorsa Sınırlandırılmış seçeneğini seçin ve İleri ve Bitir butonlarına tıklayın.](/f/54841684f805aba46dd9ac3c00f35d57.png)
5B. seçin Sabit genişlik seçeneği, ayırıcı için bir değer atayın ve tıklayın Sonraki Ve Sona ermek düğmeler.
![Sabit genişlik seçeneğini seçin ve ayırıcı için bir değer atayın ve İleri ve Bitir butonlarına tıklayın](/f/f9e99276436bd0e47ed3c6bca05a7199.png)
Ayrıca Oku:Excel Sütununu Taşı Hatası Nasıl Onarılır
Ayrıştırma Hatası Nasıl Onarılır
Ayrıştırma metninde x hatası, Android cihazlarda şu şekilde oluşabilir: Ayrıştırma Hatası: Paket ayrıştırılırken bir sorun oluştu. Bu genellikle, uygulama Google Play Store'dan yüklenemediğinde veya üçüncü taraf bir uygulama çalıştırılırken meydana gelir.
Karakter vektörleri listesi döngü halindeyse ve diğer işlevler veri değerlerini hesaplamak için doğrusal bir model oluşturuyorsa x hata metni oluşabilir. Hata mesajı Ayrıştırmada hatadır (metin = x, keep.source = FALSE):
adresindeki makaleyi okuyabilirsiniz. Android'de ayrıştırma hatası nasıl düzeltilir hatanın nedenlerini ve düzeltme yöntemlerini öğrenmek.
![SmartPhone'u sıfırlayın. Windows 10'da $ Girişindeki Ayrıştırma Hatasını Düzeltin](/f/77158bafbf1802810a23ff6a024be8fc.png)
Kılavuzdaki çözümlerin dışında aşağıdaki düzeltmeleri deneyebilirsiniz.
- yeniden indirme .apk dosya veya dosyanın adını geri yükleme.
- Değişiklikleri geri yükleme Androidmanifest.xml Dosya, uzman düzeyinde programlama becerileriniz varsa.
Tavsiye edilen:
- Başkasının Facebook Hesabı Nasıl Silinir?
- Etik Hacker Olmak İçin Gereken İlk 10 Beceri
- Kod ve Metni Paylaşmak İçin En İyi 21 Pastebin Alternatifi
- Düzeltme Komutu Hata Kodu 1 ile Başarısız Oldu Python Yumurta Bilgisi
Makale öğretmeye yardımcı olur metin nasıl ayrıştırılır ve ayrıştırma hatasını nasıl düzelteceğinizi öğrenmek için. X ayrıştırma metnindeki hatayı düzeltmeye hangi yöntemin yardımcı olduğunu ve hangi ayrıştırma yönteminin tercih edildiğini bize bildirin. Lütfen önerilerinizi ve sorularınızı aşağıdaki yorumlar bölümünde paylaşın.