- جۇغلانما
- 1272
تىزىملاتقان2012-8-15
ئاخىرقى قېتىم1970-1-1
توردا سائەت
دوست
|
بۇ يازمىنى ئاخىرىدا mouse تەھرىرلىگەن. ۋاقتى 2014-3-24 08:37
سۆزلەرنىڭ تەكرارلىقى بىر مىللەتنىڭ تىلى ئۈچۈن مۇھىم بولغان ئۇقۇملارنىڭ بىرى.سۆزلەرنىڭ تەكرارلىقىنى ھېسابلاش ئارقىلىق شۇ تىلدىكى ئەڭ كۆپ ئىشىلىتىلىدىغان سۆزلەرنىڭ ئايرىپ چىققىلى بولىدۇ ۋە بۇ ئارقىلىق تىلشۇناسلىق تەتقىقاتلىرىنى ئېلىپ بارغىلى بولىدۇ.سۆزلەرنىڭ تەكرارلىقى تىلشۇناسلىقتا ناھايىتى مۇھىم تەتقىقات قىممىتىگە ئىگە.ئۆزۈممۇ ئۇيغۇرتىلىغا ناھايىتى ئامراق بولغاچقىمىكىن بەزىدە ئۆزۈم ياخشى كۆرگەن كومپيۇتېر پىروگىرامما تىلىدا ئۇيغۇرتىلىغا مۇناسىۋتلىك بەزىبىر ئىزدىنىشلەرنى قىلىپ قويىمەن، بۇنىڭ ئىچىدكى بىرسى بولسا MS Office Word دا بەلگىلىك تېكىست ئىچىدىكى سۆزلەرنىڭ تەكرارلىقىنى ھېسابلاش ھەققىدە ئىزدىنىپ باقتىم.
سۆزلەر تەكرارلىق پىرىنسىپى
بىر پارچە بېرىلگەن ھۆججەتلەر ئىچىدە، سۆزلەر تەكرارلىقى دېگىنىمىز- مەلۇم بېرىلگەن سۆزنىڭ مۇشۇ ھۆججەتتە كۆرۈلۈش قېتىم سانىنى كۆرسىتىدۇ.مۇشۇ ساننىڭ ئۇزۇن ھۆججەتتلەرگە ئېغىپ كېتىشىنىڭ ئالدىنى ئېلىش ئۈچۈن، دائىم ئۆلچەملەشتۈرىلىدۇ(يەنى ئوخشا بىر سۆزنىڭ ئۇزۇن ھۆججەتلەردە قىسقا ھۆججەتلەرگە قارىغاندا كۆرۈلۈش قېتىم سانى تېخىمۇ يۇقىرى بولىدۇ،لېكىن سۆزنىڭ مۇھىملىقىغا قارىتا كارى بولمايدۇ).شۇڭا سۆزلەرنىڭ تەكرارلىقى بىلەن سۆزنىڭ مۇھىملىقىغا تەڭ ئەھمىيەت بېرىش كېرەك.ئەگەر بۇنداق بولمىغاندا، سۆزلەرنىڭ كۆپ تەرارلىقىغا ئاساسەن ئۇ سۆزنى كۆپ ئىشلىتىدىلىغان سۆزكەن،دېگەن خاتا قاراش كېلىپ چىقىدۇ.
مەسىلەن: سۆز مىقدارى 100 بولغان بىر پارچە ھۆججەتتە، چاشقان دېگەن سۆز 3 قېتىم كۆرۈلگەن بولسا،ئۇنىڭ مۇشۇ ھۆججەتتىكى تەكرارلىقى0.03 بولىدۇ.
تەتۈر سۆز تەكرارلىقى بولسا، دائىم قوللىنىلىدىغان سۆزلەرنىڭ مۇھىملىق دەرىجىسىگە باھا بېرىىلىدىغان ئۇسۇل. مەسىلەن: سىز سۆزنىڭ تەتۈر تەكرارلىقىنى ھېسابلاش ئۈچۈن قانچىلىك ھۆججەتتە چاشقان (بۇ مەلۇم بىر سۆز) سۆز كۆرۈلگەنلىكىنى تاپمىز، ئاندىن مۇشۇ (قانچىلىك ھۆججەت) نىڭغا ھۆججەت توپلىمى ئۆز ئىچىگە ئالغان ئومۇمىي سانغا بۆلۈۋېتىمىز. مەسىلەن: چاشقان دېگەن سۆز 1000 پارچە ھۆججەتتە كۆرۈلگەن بولسا، ھۆججەت ئومۇمىي سانى 10000 بولغان بولسا، بۇ(چاشقان) سۆزنىڭ تەتۈر تەكرارلىقى تۆۋەندىكىدەك ھېسابلىنىدۇ 9.21 ( ln(10,000,000 / 1,000) ). شۇڭا، چاشقان دېگەن سۆزنىڭ تەكرارلىقى ۋە تەتۈر تەكرارلىقى 0.28( 0.03 * 9.21 بولىدۇ.
تۆۋەندىكىسى مەن MS Office Word دا بىر پارچە 700 خەت ئەتراپىدا بولغان تېكىستتىن ئېرىشكەن نەتىجە
ئەلۋەتتە، بۇ پارچە رەسىم سۆزلەر تەكرارلىقىنىڭ مەلۇم بىر قىسمى
ھېسابلاش ئۇسۇلى
- Sub tekrarliq()
- '
- ' soz tekrarliqi macro
- '
- Dim SingleWord As String 'hazirqi hojjettin ilinghan birinqi soz
- Const maxWords = 15000 'taq sozning eng chong qimmiti, muwapiq tengsheshke bolidu
- Dim Words(maxWords) As String 'ilinghan sozni saqlaydu
- Dim Freq(maxWords) As Integer 'tekrarqliqi
- Dim WordNum As Integer 'oxshimighan taq soz sani
- Dim ByFreq As Boolean 'chiqiralghan netijini tizish olchimi
- Dim ttlwds As Long 'hojjtettiki jemi sozluk
- Dim Excludes As String 'analiz ichide bolmighan soz
- Dim Found As Boolean 'waqitliq belge
- Dim j, k, l, Temp As Integer 'waqitlik ozgerguch
- Dim tWord As String '
- Excludes = "[ ][的][是]"
- ByFreq = True
- ans = InputBox$("sozluk(1)yaki tekrarliqi(2) ge asasen tizamsiz£¿", "tewsiyelik tizish", "1")
- If ans = "" Then End
- If Trim(ans) = "1" Then
- ByFreq = False
- End If
- 'hojjet analizi bashlandi
- Selection.HomeKey Unit:=wdStory
- System.Cursor = wdCursorWait
- WordNum = 0
- ttlwds = ActiveDocument.Words.Count
- ' hojjettiki herbir sozni bir terep qilish
- For Each aWord In ActiveDocument.Words
- 'inglizche herpleng chong we kichik yizilishini ayrimisun
- SingleWord = Trim(LCase(aWord))
- 'bu sozluk tizish dayirside barmu yaqmu
- If InStr(Excludes, "[" & SingleWord & "]") Then SingleWord = ""
- If Len(SingleWord) > 0 Then
- 'bir terep qilishqa bolidighan sozluk tipildi
- Found = False
- For j = 1 To WordNum
- If Words(j) = SingleWord Then
- ' bu sozluk korulup bolghan, shuga korulup bolghan sanigha birni qoshsun
- Freq(j) = Freq(j) + 1
- Found = True
- Exit For
- End If
- Next j
- If Not Found Then
- ' bu sozluk tixi korulmighan, uni yigi soz qatarida bir terep qilip, korulush qitimini bir qilip belgilisun
- WordNum = WordNum + 1
- Words(WordNum) = SingleWord
- Freq(WordNum) = 1
- End If
- If WordNum > maxWords - 1 Then
- j = MsgBox("sozluk eng yuqiri miqdarigha yetti,maxWords ning qimmitini ashurung", vbOKOnly)
- Exit For
- End If
- End If
- ttlwds = ttlwds - 1
- 'halet istonida analizni korsetsun
- StatusBar = "yene£º" & ttlwds & " oxshimighan sozluk sani: " & WordNum
- Next aWord
- 'bir terep qilish netijisige asasen tizish
- For j = 1 To WordNum - 1
- k = j
- For l = j + 1 To WordNum
- If (Not ByFreq And Words(l) < Words(k)) Or (ByFreq And Freq(l) > Freq(k)) Then k = l
- Next l
- If k <> j Then
- tWord = Words(j)
- Words(j) = Words(k)
- Words(k) = tWord
- Temp = Freq(j)
- Freq(j) = Freq(k)
- Freq(k) = Temp
- End If
- StatusBar = "ziwatidu£º" & WordNum - j
- Next j
- ' analiz netijisini yigi word hojjitige chiqirip bersun
- tmpName = ActiveDocument.AttachedTemplate.FullName
- ' yigi hojjet qurush
- Documents.Add Template:=tmpName, NewTemplate:=False
- 'tazilash
- Selection.ParagraphFormat.TabStops.ClearAll
- ' analiz netijisini yigi qurulghan hojjette bir sozni bir qur qilip korsetsun
- With Selection
- For j = 1 To WordNum
- .TypeText Text:=Trim(Str(Freq(j))) & vbTab & Words(j) & vbCrLf
- Next j
- End With
- System.Cursor = wdCursorNormal
- j = MsgBox("bu hojjette jemi" & Trim(Str(WordNum)) & "dane oxshimighan soz bar¡£", vbOKOnly, "analiz axirlashti")
- End Sub
مەزمۇننى كۆچۈرۈۋېلىش
ئەسكەرتىش
- بۇ كود سۆزلۈك سانى پەۋقۇلئادە كۆپ بولمىغان(15000 سۆزلۈك سۈكۈتتىكى قىممەت قىلىنغان) ھۆججەتلەرگە ماس كېلىدۇ.سۆزلۈك مىقدارى ئاشقانسىرى ھېسابلاش ۋاقتىمۇ ماس ئاشىدۇ.
- بۇ پىروگىراممىدا خاتالىق بولىشى مۇمكىن، بۇ پەقەت دەسلەپكى ئىزدىنىش سۈپىتىدىلا بېرىلدى.
- ھەرپ-بەلگىلەرنىڭ تەكرارلىقىنىمۇ كۆرسىتىپ بېرەلەيدۇ.
- كۆپخىل يېزىققا قارىتا مەشغۇلات قىلغىلى بولىدۇ.
- تەتۈر تەكرارلىقىغا سۆزلۈكى مول بولغان تېكىست مەنبەسى بولمىسا بولمايدىغانلىقى ئۈچۈن، ئۇنى ئەمەلگە ئاشۇرۇشقا مۇمكىن بولمىدى.
ئەسكەرنىڭ ئىچىدىكى ئەسكەرتىش: مۇنداق تېمىلارنى پىخسىقلىق قىلماي يوللىدىم، بۇ مېنىڭ ھەرگىزمۇ بىلگەنلىرىمنى پەش قىلىۋالغىنىم ئەمەس. دوستلارنىڭ بىلگەنلىرىنى تۆكۈشىنى ئۈمىد قىلىمەن.بۇ پەقەتلا word دىكى تېكىستلەرنىڭ تەكرارلىقىنى تېپىش ئۈچۈن ئىشلىتىلىدۇ. پىروگراممىدا بۇنداق پىروگراممىنى سۆزلەرنىڭ تەكرارلىق پىرسەنتى بويىچە تىزىشمۇ ئاساسەن ھەل بولدى.
مەنبە:چاشقان تور خاتىرىسى |
باھالاش
-
1
باھا خاتىرىسى
-
|