Python Faker Module – All you need to know!

Filed Under: Python
Python Faker Module

Hello, readers. This article talks about the Python Faker Module along with its use and implementation.

So, let us begin! 🙂


Python Faker module – Crisp Overview

Python offers us various modules to build/construct applications with a variety of automation as the feature. Be it IoT or data science, Python provides us with various functions to implement the necessary pieces of the story to it.

With the Faker module, we can generate dummy data in various formats to be used. So, a question may strike your mind, why do we need to generate fake data?

Let us help you understand that 🙂

In the domain of data science, we deal with various prediction problems wherein we are supposed to predict certain scenarios on the basis of some patterns or historical data. Now, before we go and perform predictions using modeling, it becomes important for us to actually study and get a feel of the data being used.

While we perform pre-processing on the data values, we often come across missing values or a scenario where we want a good amount of area to be substituted with some dummy data for training and analysis of the modeling algorithm to be used.

This is when the Faker module comes into the picture. It helps us generate dummy data/fake data for use.


1. Generation of fake data using Faker module

At first, we would need to install the Faker module onto our workstation as shown below.

Installing Faker module
Installing Faker module

Then, we would need to import the module into our environment using the import statement. Prior to creating some fake data, we would need to associate an object with the Faker module for us to utilize the functions at ease.

Once we have the object associated, we can generate various fields such as name, age, email, address, country, text, etc with the functions offered by the Faker library.

Example 1:

Here, we generate random fake data using the Faker module. We make use of name(), text(), and email() functions to generate fake data in terms of name, text sentence, and email values.

from faker import Faker
faker_obj = Faker()
print(faker_obj.name())
print(faker_obj.text())
print(faker_obj.email())

Output:

Mr. Kevin Lee MD
Find boy under should special environment health. Nature century near own Republican by skin left.
shannon65@richardson.info

2. Generating fake data in a variety of languages using Faker module

Apart from building the fake data at random and in a standardized form, we can even generate random data in a variety of languages.

Let us try to generate some fake data in the Japanese language now.

Example:

from faker import Faker
faker_obj = Faker('ja_JP')
print(faker_obj.name())

Output:

渡辺 裕美子

3. Building fake tabular data

Having created fake data in various forms such as name, country, and text, it is now time to generate some fake data in a table format. We can relate this data with the Python DataFrame format.

Have a look at the below code.

Example:

import pandas as p
from faker import Faker
faker_obj = Faker()
info= [faker_obj.profile() for i in range(2)]
df = p.DataFrame(info)
print(df)

Output:

                                             job        company          ssn  \
0                                   Video editor         Ho Inc  582-29-5414   
1  Programme researcher, broadcasting/film/video  Schneider Inc  574-29-9054   

                                           residence  \
0  03691 Hall Causeway Apt. 233\nPetertown, ND 66563   
1  7001 Julie Extension Apt. 257\nWoodmouth, AZ 6...   

            current_location blood_group                    website  \
0  (-52.029649, -115.595130)          A+     [https://morales.org/]   
1   (88.6719445, 122.925423)          B+  [http://www.bridges.com/]   

        username             name sex  \
0      kstephens       Susan Wang   F   
1  elliottedward  Monica Williams   F   

                                          address                 mail  \
0   508 Cox Place Apt. 692\nLorettaside, SD 66115  kwilson@hotmail.com   
1  36217 Benjamin Extensions\nCodyville, MS 95229    isteele@yahoo.com   

    birthdate  
0  1914-11-15  
1  2015-11-22  


Conclusion

By this, we have come to the end of this topic. Feel free to comment below, in case you come across any questions.

For more such posts related to Python programming, Stay tuned with us.

Till then, Happy Learning 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *

close
Generic selectors
Exact matches only
Search in title
Search in content