Scanner for Miraji at Chicago Colloquium

Load Dependencies and Data Files


In [52]:
import sys
sys.path.append('./graphparser/')
import graphparser as gp
import pandas as pd
import networkx as nx
import custom_meter_graph as cmg
import logging,sys,codecs,re,csv
import wrangling,scanning

In [53]:
poems_data = pd.DataFrame.from_csv('data/miraji_nazmen.csv')
poems_metadata = pd.DataFrame.from_csv('data/miraji_nazmen_meta.csv')

poems = []
miraji = {'file_name': 'data/miraji_nazmen.csv',
           'file_name_meta': 'data/miraji_nazmen_meta.csv'}
poets = {'miraji':miraji}
poets = wrangling.load_poets(poets)
poet='miraji'


loading poet  miraji

Data File Structure


In [54]:
pd.DataFrame.from_csv(poets[poet]['file_name'],encoding='utf-16')


Out[54]:
type transliteration urdu notes
0 TITLE NaN چل چلاؤ NaN
1 LINE NaN بس دیکھا اور پھر بھول گئے، NaN
2 TOKEN bas بس NaN
3 TOKEN dekhaa دیکھا NaN
4 TOKEN aur اور NaN
5 TOKEN phir پھر NaN
6 TOKEN bhuul بھول NaN
7 TOKEN ga))e گئے NaN
8 TOKEN , ، NaN
9 LINE NaN جب حُسن نگاہوں میں آیا NaN
10 TOKEN jab جب NaN
11 TOKEN ;husn حُسن NaN
12 TOKEN nigaaho;n نگاہوں NaN
13 TOKEN me;n میں NaN
14 TOKEN aayaa آیا NaN
15 LINE NaN من ساگر میں طوفان اُٹھا NaN
16 TOKEN man من NaN
17 TOKEN saagar ساگر NaN
18 TOKEN me;n میں NaN
19 TOKEN :tuufaan طوفان NaN
20 TOKEN u;thaa اُٹھا NaN
21 LINE NaN طوفان کو چنچل دیکھ ڈری۔ آکاش کی گنگا دودھ بھری NaN
22 TOKEN :tuufaan طوفان NaN
23 TOKEN ko کو NaN
24 TOKEN chanchal چنچل NaN
25 TOKEN dekh دیکھ NaN
26 TOKEN ;darii ڈری NaN
27 TOKEN -- ۔ NaN
28 TOKEN aakaash آکاش NaN
29 TOKEN kii کی NaN
... ... ... ... ...
21945 TOKEN kis کس NaN
21946 TOKEN ko کو NaN
21947 TOKEN aage آگے NaN
21948 TOKEN jaanaa جانا NaN
21949 TOKEN hai ہے NaN
21950 TOKEN saath ساتھ NaN
21951 TOKEN pazhmurdagii پژمردگی NaN
21952 TOKEN ko کو NaN
21953 TOKEN le لے NaN
21954 TOKEN kar کر NaN
21955 LINE NaN اسے یہاں کون جانتا ہے NaN
21956 TOKEN ise اسے NaN
21957 TOKEN yahaa;n یہاں NaN
21958 TOKEN kaun کون NaN
21959 TOKEN jaantaa جانتا NaN
21960 TOKEN hai ہے NaN
21961 LINE NaN ہر اک کے پہلو میں خاک آلودہ آگہی ہے۔ NaN
21962 TOKEN har ہر NaN
21963 TOKEN ik اک NaN
21964 TOKEN ke کے NaN
21965 TOKEN pahluu پہلو NaN
21966 TOKEN me;n میں NaN
21967 TOKEN ;xaak خاک NaN
21968 TOKEN aaluudah آلودہ NaN
21969 TOKEN aagahii آگہی NaN
21970 TOKEN hai ہے NaN
21971 TOKEN -- ۔ NaN
21972 LINE NaN ۔۔۔۔۔۔۔۔ NaN
21973 TOKEN ---------------- ۔۔۔۔۔۔۔۔ NaN
21974 LINE NaN NaN NaN

21975 rows × 4 columns

Scan All Poems


In [55]:
for poet in ['miraji']:
    poets = wrangling.load_poets(poets,just_poet=poet)
    x=scanning.scan_poet(poets,poet)
    x.to_csv('output/'+poet+'-scanned.csv',encoding='utf-16',iquoting=csv.QUOTE_ALL)


loading poet  miraji
scanning  0 urdu                  چل چلاؤ 
meter         Hindi[8,16,24,32]
enjambment                  NaN
notes                       NaN
Name: 0, dtype: object
nan
scanning  1 urdu          دیوداسی اور پُجاری 
meter                       Hindi
enjambment                    NaN
notes                         NaN
Name: 1, dtype: object
nan
scanning  2 urdu          نارسَائی 
meter         Hindi[27]
enjambment          NaN
notes               NaN
Name: 2, dtype: object
nan
scanning  3 urdu          کٹھور 
meter          Hindi
enjambment       NaN
notes            NaN
Name: 3, dtype: object
nan
scanning  4 urdu                ایک عورت 
meter         Hindi[15,30,31]
enjambment                NaN
notes                     NaN
Name: 4, dtype: object
nan
scanning  5 urdu              برہا 
meter         Hindi[30]
enjambment          NaN
notes               NaN
Name: 5, dtype: object
nan
scanning  6 urdu          دُکھ دل کا دارو 
meter                 [-=-==]+
enjambment                 NaN
notes                      NaN
Name: 6, dtype: object
nan
scanning  7 urdu              سرگوشیاں 
meter         (=-==)+=-=(-)
enjambment             True
notes            enjambment
Name: 7, dtype: object
True
scanning  8 urdu                              کیفِ حیات 
meter         Hindi[11,14,15,16,22,29,30,31]
enjambment                               NaN
notes                                  tough
Name: 8, dtype: object
nan
scanning  9 urdu          دُور و نزدیک 
meter           [-==]+-=(-)
enjambment              NaN
notes                   NaN
Name: 9, dtype: object
nan
scanning  10 urdu                           سنجوگ 
meter         Hindi[8,16,24,32,40,44]
enjambment                        NaN
notes                             NaN
Name: 10, dtype: object
nan
scanning  11 urdu                 چنچل 
meter            Hindi[32]
enjambment             NaN
notes         starts short
Name: 11, dtype: object
nan
scanning  12 urdu          ناگ سبھا کا ناچ 
meter                    Hindi
enjambment                 NaN
notes                      NaN
Name: 12, dtype: object
nan
scanning  13 urdu          آمدِ صُبح 
meter             [-===]+
enjambment            NaN
notes                 NaN
Name: 13, dtype: object
nan
scanning  14 urdu          ایک تصویر 
meter          Hindi[30]
enjambment           NaN
notes                NaN
Name: 14, dtype: object
nan
scanning  15 urdu                                            اغوا 
meter          =-==-=-=[--=|==](-)=-==-=-=[--=|==](-)
enjambment                                        NaN
notes                            use alt with short -
Name: 15, dtype: object
nan
scanning  16 urdu          ابُوالہَول 
meter            [-=-==]+
enjambment            NaN
notes                 NaN
Name: 16, dtype: object
nan
scanning  17 urdu          میں ڈرتا ہوں مسّرت سے 
meter                        [-===]+
enjambment                       NaN
notes                            NaN
Name: 17, dtype: object
nan
scanning  18 urdu              بُلندیاں 
meter         [=-==]+=-=(-)
enjambment              NaN
notes                   NaN
Name: 18, dtype: object
nan
scanning  19 urdu          اجنبی، انجان عورت رات کی 
meter                         Hindi[32]
enjambment                          NaN
notes                               NaN
Name: 19, dtype: object
nan
scanning  20 urdu                 محبّت 
meter         (=-==)+=-=(-)
enjambment              NaN
notes                   NaN
Name: 20, dtype: object
nan
scanning  21 urdu          سنگِ آساں 
meter             [-===]+
enjambment            NaN
notes                 NaN
Name: 21, dtype: object
nan
scanning  22 urdu            اُجالا 
meter         Hindi[32]
enjambment          NaN
notes               NaN
Name: 22, dtype: object
nan
scanning  23 urdu          ترقی پسند ادب 
meter              Hindi[30]
enjambment               NaN
notes                    NaN
Name: 23, dtype: object
nan
scanning  24 urdu               مندر میں 
meter         Hindi[8,10,16]
enjambment               NaN
notes                    NaN
Name: 24, dtype: object
nan
scanning  25 urdu          دھوبی کا گھاٹ 
meter              ==(--==)+
enjambment               NaN
notes                    NaN
Name: 25, dtype: object
nan
scanning  26 urdu                             ہندی جوان 
meter         [=-==|--==](--==)+(--=|==)(-)
enjambment                              NaN
notes                                   NaN
Name: 26, dtype: object
nan
scanning  27 urdu                           اُونچا مکان 
meter         [=-==|--==](--==)+(--=|==)(-)
enjambment                              NaN
notes                                   NaN
Name: 27, dtype: object
nan
scanning  28 urdu                             ایک منظر 
meter                            Hindi[28]
enjambment                             NaN
notes         kyo;n as short; 6/12 or 12/6
Name: 28, dtype: object
nan
scanning  29 urdu          چودہ مئی کی رات 
meter                Hindi[32]
enjambment                 NaN
notes                      NaN
Name: 29, dtype: object
nan
scanning  30 urdu                            لبِ جوئبارے 
meter         [=-==|--==]--==--==[==|--=](-)
enjambment                               NaN
notes                                    NaN
Name: 30, dtype: object
nan
scanning  31 urdu                عکس کی حرکت 
meter         Hindi[16,24,30,32]
enjambment                   NaN
notes                        NaN
Name: 31, dtype: object
nan
scanning  32 urdu                     شام کو، راستے پر، 
meter         [=-==|--==](--==)+(--=|==)(-)
enjambment                              NaN
notes                                   NaN
Name: 32, dtype: object
nan
scanning  33 urdu                               اُفتَاد 
meter         [=-==|--==](--==)+(--=|==)(-)
enjambment                              NaN
notes                                   NaN
Name: 33, dtype: object
nan
scanning  34 urdu          محبُوبہ کا سایہ 
meter             Hindi[28,32]
enjambment                 NaN
notes         34 also possible
Name: 34, dtype: object
nan
scanning  35 urdu                          بعد کی اُڑان 
meter         [=-==|--==](--==)+(--=|==)(-)
enjambment                              NaN
notes                                   NaN
Name: 35, dtype: object
nan
scanning  36 urdu               دن کے روپ میں رات کہانی 
meter         [=-==|--==](--==)+(--=|==)(-)
enjambment                              NaN
notes                                   NaN
Name: 36, dtype: object
nan
scanning  37 urdu          کلرک کا نغمۂ محبّت 
meter         Hindi[8,16,24,28,32]
enjambment                     NaN
notes                          NaN
Name: 37, dtype: object
nan
scanning  38 urdu                        سرسراہٹ 
meter                   [-===]+(-==)
enjambment                      True
notes         -== only on first line
Name: 38, dtype: object
True
scanning  39 urdu            نادان 
meter         [-=-==]+
enjambment         NaN
notes              NaN
Name: 39, dtype: object
nan
scanning  40 urdu                     محرُومی 
meter                  [-==]+(==)
enjambment                   True
notes          == only on line 31
Name: 40, dtype: object
True
scanning  41 urdu          جاتری 
meter         [=-=]+
enjambment      True
notes            NaN
Name: 41, dtype: object
True
scanning  42 urdu                                 رُخصت 
meter         [=-==|--==](--==)+(--=|==)(-)
enjambment                              NaN
notes                                   NaN
Name: 42, dtype: object
nan
scanning  43 urdu                              ریل میں 
meter                        [==|--=|=--]+
enjambment                             NaN
notes         strangely works; has caesura
Name: 43, dtype: object
nan
scanning  44 urdu             آخری عورت 
meter                  [-=]+
enjambment               NaN
notes         k ((aajizaanah
Name: 44, dtype: object
nan
scanning  45 urdu          دھوکا 
meter          [-=]+
enjambment       NaN
notes            NaN
Name: 45, dtype: object
nan
scanning  46 urdu                            تفاوتِ راہ 
meter         [=-==|--==](--==)+(--=|==)(-)
enjambment                              NaN
notes                                   NaN
Name: 46, dtype: object
nan
scanning  47 urdu                                 جہالت 
meter         [=-==|--==](--==)+(--=|==)(-)
enjambment                             True
notes                      enjambment—check
Name: 47, dtype: object
True
scanning  48 urdu          آدرش 
meter          [-=]+
enjambment       NaN
notes            NaN
Name: 48, dtype: object
nan
scanning  49 urdu                  کتھک! 
meter              Hindi[32]
enjambment               NaN
notes         two exceptions
Name: 49, dtype: object
nan
scanning  50 urdu                   حرامی 
meter         Hindi[16,32,34]
enjambment                NaN
notes                     NaN
Name: 50, dtype: object
nan
scanning  51 urdu               فنا 
meter         [=-=]+(-)
enjambment        False
notes               NaN
Name: 51, dtype: object
scanning  52 urdu          رس کی انوکھی لہریں 
meter                      [-==]+
enjambment                    NaN
notes                         NaN
Name: 52, dtype: object
nan
scanning  53 urdu          ایک تِھی عورت 
meter             [-==]+(-=)
enjambment               NaN
notes                    NaN
Name: 53, dtype: object
nan
scanning  54 urdu          کروٹیں 
meter          [=-=]+
enjambment        NaN
notes             NaN
Name: 54, dtype: object
nan
scanning  55 urdu                                 بُرقع 
meter         [=-==|--==](--==)+(--=|==)(-)
enjambment                             True
notes                      enjambment—check
Name: 55, dtype: object
True
scanning  56 urdu                             تن آسانی 
meter         [=-==|--==](--==)+(--=|==)(-)
enjambment                             True
notes                      enjambment—check
Name: 56, dtype: object
True
scanning  57 urdu             اداکار 
meter           [-=-==]+
enjambment          True
notes         enjambment
Name: 57, dtype: object
True

Metrical Patterns

= is long,

-is short,

() is optional,

[] is required,

Hindi[##] is 'hindi meter' with counts


In [57]:
sorted(list(set(poets[poet]['metadata']['meter'])))


Out[57]:
[u' =-==-=-=[--=|==](-)=-==-=-=[--=|==](-)',
 u' ==(--==)+',
 u'(=-==)+=-=(-)',
 u'Hindi',
 u'Hindi[11,14,15,16,22,29,30,31]',
 u'Hindi[15,30,31]',
 u'Hindi[16,24,30,32]',
 u'Hindi[16,32,34]',
 u'Hindi[27]',
 u'Hindi[28,32]',
 u'Hindi[28]',
 u'Hindi[30]',
 u'Hindi[32]',
 u'Hindi[8,10,16]',
 u'Hindi[8,16,24,28,32]',
 u'Hindi[8,16,24,32,40,44]',
 u'Hindi[8,16,24,32]',
 u'[-=-==]+',
 u'[-===]+',
 u'[-===]+(-==)',
 u'[-==]+',
 u'[-==]+(-=)',
 u'[-==]+(==)',
 u'[-==]+-=(-)',
 u'[-=]+',
 u'[=-==]+=-=(-)',
 u'[=-==|--==](--==)+(--=|==)(-)',
 u'[=-==|--==]--==--==[==|--=](-)',
 u'[=-=]+',
 u'[=-=]+(-)',
 u'[==|--=|=--]+']

Scan Output


In [60]:
x[['poem','clean_transliteration','scan']]


Out[60]:
poem clean_transliteration scan
0.0 چل چلاؤ bas dekhaa aur phir bhuul ga))e ======--=
0.1 چل چلاؤ jab ;husn nigaaho;n me;n aayaa ==--=====
0.2 چل چلاؤ man saagar me;n :tuufaan u;thaa ======--=
0.3 چل چلاؤ :tuufaan ko chanchal dekh ;darii aakaash kii ... ==--===--===--===--=
0.4 چل چلاؤ aur chaa;nd chhupaa taare so))e :tuufaan mi;t... ==--=======--===--=
0.5 چل چلاؤ dil bhuul gayaa pahlii puujaa man mandir kii ... ==--=============
0.6 چل چلاؤ din laayaa baate;n anjaanii phir din bhii nay... ===========--==--=
0.7 چل چلاؤ piitam bhii na))ii premii bhii nayaa sukh sej... ===--===--==--===--=
0.8 چل چلاؤ ik pal ko aa))ii nigaaho;n me;n jhilmil jhilm... ====--===========
0.9 چل چلاؤ sundartaa aur phir bhuul ga))e ======--=
0.10 چل چلاؤ mat jaano hame;n tum har jaa))ii ===--====
0.11 چل چلاؤ har-jaa))ii kyo;n kaise kaise ========
0.12 چل چلاؤ kyaa daad jo ik lam;he kii ho vuh daad nahii;... ==--=======--=====
0.13 چل چلاؤ jo baat ho dil kii aa;nkho;n kii ==--=====
0.14 چل چلاؤ tum us ko havas kyo;n kahte ho ==--=====
0.15 چل چلاؤ jitnii bhii jahaa;n ho jalvah garii us se dil... ===--===--========
0.16 چل چلاؤ jab tak hai zamii;n ==--=
0.17 چل چلاؤ jab tak hai zamaa;n ==--=
0.18 چل چلاؤ yih ;husn -o- numaa))ish jaarii hai ==--=====
0.19 چل چلاؤ is ek jhalak ko chhichhaltii na:zar se dekh k... ==--=--=--===--=====
0.20 چل چلاؤ ham is dunyaa ke musaafir hai;n ====--===
0.21 چل چلاؤ aur qaafilah hai har aan ravaa;n ==--===--=
0.22 چل چلاؤ har bastii har jangal .sa;hraa aur ruup manoh... ==========--=====
0.23 چل چلاؤ ik lam;hah man ko lubhaa))e gaa ik lam;hah na... ====--=====--=====
0.24 چل چلاؤ kyaa daad jo ik lam;he kii ho vuh daad nahii;... ==--=======--=====
0.25 چل چلاؤ hai chaa;nd falak par ik lam;hah ==--=====
0.26 چل چلاؤ aur ik lam;hah yih sitaare hai;n ====--===
0.27 چل چلاؤ aur ((umr kaa ((ar.sah bhii socho ik lam;hah hai ==--=========
1.0 دیوداسی اور پُجاری lo naach yih dekho naach pavitr naach ik dev ... ==--===--=-=-==-=-=
1.1 دیوداسی اور پُجاری dhiire dhiire duur hu))aa hai saayah mere dil... =====--=========--===
... ... ... ...
57.13 اداکار mujhe bulaatii hai phir yih kahtii hai chup ;... -=-==-=-==-=-==-=-==-=-==
57.14 اداکار dekhtaa hai lekin -=-==
57.15 اداکار khilaa hu))aa phuul kis kaa saathii =-==-=-==
57.16 اداکار use chaman se nahii;n hai nisbat vuh is jahaa... -=-==-=-==-=-==
57.17 اداکار har ik ke haatho;n se hote hote kabhii kisii ... -=-==-=-==-=-==-=-==-=-==
57.18 اداکار pahu;nchtaa rahtaa hai aur zamaanah -=-==-=-==
57.19 اداکار pukaartaa hai khilaa hu))aa phuul kis kaa saa... -=-==-=-==-=-==
57.20 اداکار vuh mi;t ke rahtaa hai mi;t ke rahtaa hai cha... -=-==-=-==-=-==-=-==
57.21 اداکار use mi;taa de -=-==
57.22 اداکار mai;n jaantaa huu;n khilaa hu))aa phuul kis k... -=-==-=-==-=-==
57.23 اداکار mai;n jaantaa huu;n yih chand ishaare mujhe b... -=-==-=-==-=-==-=-==
57.24 اداکار shikastah saa;hil kii jhaag ban kar -=-==-=-==
57.25 اداکار sukuu;n ke aa;gosh-e be ra;xii me;n hii jaa b... -=-==-=-==-=-==
57.26 اداکار vuhii siyah raat jis ke mab'ham guluu-e terah... -=-==-=-==-=-==-=-==
57.27 اداکار ubalte duud-e siyah kii maanind yih bataataa ... -=-==-=-==-=-==-=-==-=-==
57.28 اداکار vuhii ubaltaa hu))aa a;ndheraa hamaarii hasti... -=-==-=-==-=-==-=-==
57.29 اداکار hamaarii hastii jo ek tinke kaa ruup bhar kar... -=-==-=-==-=-==-=-==-=-==
57.30 اداکار machaltii lahre;n tiraa tabassum tire ishaare... -=-==-=-==-=-==-=-==-=-==-=-==
57.31 اداکار mai;n jin ke bal par yih kah rahaa huu;n -=-==-=-==
57.32 اداکار mirii zabaa;n chhipkalii kii maanind phuul se... -=-==-=-==-=-==-=-==-=-==
57.33 اداکار magar yih pardah jo ruuk ban kar ma;hal ko gh... -=-==-=-==-=-==-=-==-=-==
57.34 اداکار yih kab masahrii bane gaa terii -=-==-=-==
57.35 اداکار achaanak ik simt se vuh bha;nvraa phisal ke a... -=-==-=-==-=-==
57.36 اداکار to mai;n ne dekhaa ;xayaal kii god hii khilii... -=-==-=-==-=-==
57.37 اداکار khilaa hu))aa phuul kis kaa saathii -=-==-=-==
57.38 اداکار mai;n sochtaa huu;n kih siimguu;n daur-e kahk... -=-==-=-==-=-==
57.39 اداکار ka))ii musaafir bha;tak rahe hai;n -=-==-=-==
57.40 اداکار magar safar kis kaa :tai hu))aa kis ko aage j... -=-==-=-==-=-==-=-==-=-==
57.41 اداکار ise yahaa;n kaun jaantaa hai -=-==-=-==
57.42 اداکار har ik ke pahluu me;n ;xaak aaluudah aagahii hai -=-==-=-==-=-==

1919 rows × 3 columns


In [ ]: