NLP | Replacing verb phrases and cardinals nouns

Code below —  swap_verb_phrase class which swaps the left side of the chunk to the right, using the verb as the pivot point. It uses the first_chunk_index () function defined to find the turn-around verb.

Code # 1: swap_verb_phrase class to replace the verb

def swap_verb_phrase (chunk):

def vbpred (wt):

  word, tag = wt

return tag! = ` VBG` and tag.startswith ( `VB` ) and len (tag) & gt;  2

 

vbidx = first_chunk_index (chunk, vbpred)

 

if vbidx is None :

return chunk

 

return chunk [vbidx + 1 :] + chunk [: vbidx]

Code # 2: Assessment swap_verb_phrase

swap_verb_phrase ([( `the` , `DT` ), ( `book` , ` NN` ),

( `was` , `VBD` ), ( ` great` , `JJ` )])

Output:

 [(`great`,` JJ`), (`the`,` DT`), (`book`,` NN`)] 

The code does not revolve around the gerund, because they usually used to describe su 

Code # 3:

swap_verb_phrase ([( `this` , ` DT` ), 

( `gripping` , `VBG` ), ( ` book` , `NN` ), 

( `is` , `VBZ` ), ( `fantastic` , ` JJ` )])

Output:

 [(`fantastic`,` JJ`), (`this`,` DT`), (`gripping`,` VBG`), (`book`,` NN`)] 

Cardinal noun replacement:
Cardinals in a chunk are numbered and labeled as CD. These cardinals occur before the noun acardinals. Swapping cardinals with nouns is useful to put a cardinal in front of a noun.

Code # 4: Swapping Cardinal Nouns

swap_noun_cardinal ( [( `Dec.` , ` NNP` ), ( `10` , `CD` )])

  

swap_noun_cardinal ([( `the` , ` DT` ), ( `top` , `NN` ), ( ` 10` , `CD` )])

Output:

 [(`10`,` CD`), (`Dec.`,` NNP`)] [(`the`,` DT`), (`10`,` CD`), (`top`,` NN`)]