Open In App

Python word2number Module

Last Updated : 29 Mar, 2024
Improve
Improve
Like Article
Like
Save
Share
Report

Converting words to numbers becomes a quite challenging task in any programming language. Python’s Word2Number module emerges as a handy solution, facilitating the conversion of words denoting numbers into their corresponding numerical values with ease. In this article, we will see what is the word2number module with the help of some examples.

What is the word2number Module in Python?

Python’s Word2Number module serves as a valuable tool for effortlessly converting textual representations of numbers into their numerical equivalents. By offering a straightforward interface and robust functionality, it simplifies the task of processing numeric data expressed in words within Python programs.

Python word2number Module Examples

Below are some examples of the word2number module usage in Python:

Converting Words to Numbers

In this example, the word2number library is used to convert written-out numbers into their numerical equivalents. Specifically, it demonstrates conversion for three examples: “two hundred seventy-five”, “one thousand five hundred twenty-four”, and “one million five hundred twenty-four”.

Python3
from word2number import w2n

# Convert words to numbers
print(w2n.word_to_num("two hundred seventy-five"))
print(w2n.word_to_num("one thousand five hundred twenty-four"))
print(w2n.word_to_num("one million five hundred twenty-four"))

Output:

275 
1524 
1000524

Convert Word to Number in a Pandas DataFrame

In this example, a Pandas DataFrame is created with a column of number words. Utilizing the apply function along with word_to_num from the word2number library, the number words in the DataFrame are converted into numerical values, and a new column is appended with these numerical values. The resulting DataFrame is then printed.

Python3
import pandas as pd
from word2number import w2n

# Create a DataFrame with a column of number words
data = {'Number Words': ['five hundred', 'sixty two', 'three thousand']}
df = pd.DataFrame(data)

# Convert number words to numbers using apply and word_to_num
df['Numerical Values'] = df['Number Words'].apply(w2n.word_to_num)
print(df)

Output:

     Number Words  Numerical Values
0    five hundred               500
1       sixty two                62
2  three thousand              3000

Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads