You are on page 1of 33

2023-2024

Project Report
On
Bank Management System
the Partial Fulfillment of

ALL INDIA SENIOR SCHOOL CERTIFICATE EXAMINATION


(AISSCE)

Conducted by Central Board of Secondary Education


As a part of the INFORMATICS PRACTICES (065)

Submitted To: Submitted by:


Mrs.Purva Shrimali Radhika Khatri
PGT-Informatics Practices Class 12th Humanities
CERTIFICATE
This is to certify that Radhika Khatri of class 12th Humanities, has successfully

completed the INFORMATICS PRACTICES Project.

It is a bonafide work done by the student in partial fulfillment of CBSE AISSCE

Examination, 2024 and has been carried out under my direct supervision and

guidance.

Principal Subject Teacher


Mrs.Swati Mehta Mrs.Purva Shrimali
PGT-Informatics Practices
Acknowledgement
First of all, I extend my heartiest gratitude to my teacher Mrs.PURVA SHRIMALI
under whose utmost guidance this work could take the recent shape.

I wish to express my deep gratitude and sincere thanks to Principal Mrs. Swati
Mehta, Mahaveer Public School, Jodhpur for the encouragement and for all facilities
that she provided for this project work.

I can’t forget to offer my sincere thanks to my classmates whose constant feedbacks


make my project more effective. Lastly, I would like to thank my parents for their
encouragement in fulfilling my project.

RADHIKA KHATRI
TABLE OF CONTENT

 INTRODUCTION

 OBJECTIVE OF THE PROJECT

 THEORITICAL BACKGROUND

 HARDWARE AND SOFTWARE REQUIREMENT

 PYTHON CODING

 OUTPUT

 BIBLIOGRAPHY
INTRODUCTION

This software project is developed to automate the functionalities of a BANK

MANAGEMENT SYSTEM.

The purpose of the software project is to develop a information about bank

management system that encapsulates the diverse financial aspects of customer. The

personal account name serve as identifier of individual account ,the loan column

tracks any outstanding loans associated with a specific account. The current column

manages the current account balances, and the fixed deposit column records

information related to fixed-term deposits. Finally ,the saving amount column keeps

the track of funds held in savings account. This structured approach ensures a

Comprehensive overview of customers financial portfolios,facilitating efficient

account management and financial analysis.


OBJECTIVE OF THE PROJECT

The main objective of the project (BANK MANAGEMENT SYSTEM) is to create a

versatile console –based application that enables users to interact with banking data.

It aims to offer a range of functionalities, including data fetching, statistical analysis,

record display and manipulation, searching and data visualization. By utilizing the

pandas library for data manipulation and matplotlib for visualization, it provides a

comprehensive tool for managing, analyzing, and visualizing banking data. The user-

friendly menu-driven interface allows user to perform various operations efficiently,

making it a practical solution for handling basic banking system tasks in a console

environment.
THEORITICAL BACKGROUND

WHAT IS PYTHON?
Python is a High- level, general-purpose programming language known for its
readability and versatility .It supports multiple programming paradigms and is widely
used in various domains, including web development ,data science, artificial
intelligence, and more. It was created by Guido van Rossum and first released in
1991.Python’s simple,easy to learn syntax emphasizes readability and therefore
reduces the cost of programming maintenance. It is free and open source and more
expressive.Python supports modules and packages, which encourages program
modularity and code reuse. Some of the characteristics:

1.Readability:Python emphasizes code readability with a clear and expressive

syntax.It uses indentation to define code blocks,making it visually straightforward.

2.Interpretation:It is an interpreted language, meaning that code executed is line by

line by an interpreter without need for compilation.

3.Dynamic Typing: Pythons uses Dynamic Typing ,allowing developers to create

flexible and adaptable code.

4.Cross Platform: Python is a cross platform ,Running on various operating system

,including Windows, macOC, and Linux.

What is Pandas?
Pandas is Python’s library for data analysis.Pandas has derivedits name from “Panel

Data System” and its has become very popular choice for data analysis.
Data Analysis is the technique of collecting, transforming, and organizing data to

make future predictions and informed data-driven decisions. It also helps to find

possible solutions for a business problem.

While working with Pandas ,it is required to import it.

Data Structure is collection of data values and operations which can be perform over

data.

In Pandas there are two type of Data Structure-

1.Series

2.DataFrame

What is Data Visualization?

Data Visualization is the technique to present the data in a pictorial or graphical

format. It enables stakeholders and decision makers to analyze data visually. The

data in a graphical format allows them to identify new trends and pattern easily.

The main benefits of Data Visualization are as follows:

 It simplifies the complex quantitative information.

 It helps analyze and explore big data easily.

 It identifies the areas that need attention or improvement.

 It identifies the relationship between data points and variables.


 It explores new patterns and reveals hidden patterns in the data.

Matplotlib Library and pyplot Interface

 The Matplotlib is a python library that provides many interfaces functionally

for 2D graphics.

 In short, we can call matplotlib as a high –quality plotting library of python.

 The matplotlib library offers many different named collections of methods

,pyplot is one such intereface.

 Pyplot is a collection of methods within matplotlib which allows user to

construct 2D plots easily and interactively.

Matplotlib can be installed using pip command in command prompt: pip install

matplotlib

Pyplot can be import using :

import matplotlib.pyplot

Types of plot using matplotlib:

1.Line Graph
2.Vertical Bar Graph

3.Horizontal Bar graph

4.Histogram
CSV Files

 CSV stands for comma- Separarted values.

 This type of file can be opened with excel file or notepad.

 CSV file is nothing more than a simple text file. However,it is the most

common, simple and easiest method to store tabular data.

 This particular format arranges tables by a specific structure divided into rows

and columns .

 To import data from a CSV file into a DataFrame ,you can use the read_CSV()

function.

 This function takes the path to the CSV file as its input, and returns a

DataFrame object.

 To export a DataFrame to a CSV file,you can use the to_CSV() function.

 This function takes the path to the CSV file as its Output,and writes the

DataFrame to the file.


HARDWARE AND SOFTWARE REQUIREMENT

HARDWARE USED:-

OS Windows 8.1

Manufacture-Toshiba

Model: Satellite U940-X0110

Processor :Intel(R ) Core (TM) i5-3317U CPU @ 1.70GHz 1.70GHz

Memory:4.00 GB RAM

System Type: 64 Bit Operating System

SOFTWARE USED:-

Windows Operating System

Python IDLE Version 3.12.0

Pages for Documentation


PYTHONCODING
import pandas as pd
import matplotlib.pyplot as plt

bank=pd.read_csv("C:\\Users\\Toshiba\\Desktop\\radhika\\Bank_Management.csv",
index_col=0)

while True:

print("Main Menu")

print("1. Fetch Data")

print("2. Dataframe Statistics")

print("3. Display Records")

print("4. Working on Records")

print("5. Search Specific row/column")


print("6. Data Visualization")

print("7. Exit")

ch=int(input("Enter your choice(1-7):"))

if ch==1:

print("Bank Data:")

print(bank)

elif ch==2:

while True:

print("DataFrame Statistics Menu")

print("1. Display all column Names")

print("2. Display the indexes")

print("3. Display the shape")

print("4. Display the datatypes of all the columns")

print("5. Display the size")

print("6. Exit")

ch2=int(input("Enter your choice(1-6):"))

if ch2==1:

print("column names:")
print(bank.columns)

elif ch2==2:

print("indexes:")

print(bank.index)

elif ch2==3:

print("Shape of the DataFrame:")

print(bank.shape)

elif ch2==4:

print("Data Types of the column:")

print(bank.dtypes)

elif ch2==5:

print("Size of the DataFrame:")

print(bank.size)

elif ch2==6:

break

elif ch==3:

while True:

print("Display Records Menu")

print("1. Top 5 Records:")

print("2. Bottom 5 Records:")

print("3. Specific Number of records from top:")


print("4. Specific number of records from bottom:")

print("5. Detalis of a specific customer:")

print("6. Exit")

ch3=int(input("Enter your choice(1-6):"))

if ch3==1:

print("Top 5 Records:")

print(bank.head())

elif ch3==2:

print("Bottom 5 Records:")

print(bank.tail())

elif ch3==3:

n=int(input("Enter how many records you want to display:"))

print(f"Top{n} Records:")

print(bank.head(n))

elif ch3==4:

n=int(input("Enter how many records you want to display:"))

print(f"Bottom{n} Records:")

print(bank.tail(n))

elif ch3==5:

st=input("enter the personal account name for which you want details:")
print(f"Details of {st}:")

print(bank.loc[st])

elif ch3==6:

break

elif ch==4:

while True:

print("working on records Menu")

print("1. Insert a specific Record:")

print("2. Delete a specific Record:")

print("3. Update a specific Record:")

print("4. Exit")

ch4=int(input("Enter your choice(1-4):"))

if ch4==1:

Acc_name=input("Enter Personal Account:")

Savings=int(input("Enter Savings:"))

Loan=int(input("Enter the amount of loan:"))

Current=int(input("Enter the amount of current:"))

Fixed_Deposit=int(input("Enter the amount of fixed deposit:"))

print("Before Data Entry:")


print(bank)

#add the new record to the DataFrame

bank.loc[Acc_name]=[Savings,Loan,Current,Fixed_Deposit]

print("Data Successfully inserted")

print("after Data Entery:")

print(bank)

elif ch4==2:

Acc_name=input("Enter Personal account name whose data needs to be

deleted:")

bank.drop(Acc_name,inplace=True)

print("Data successfully deleted")

elif ch4==3:

Acc_name=input("Enter Personal account name to be updated:")

Savings=int(input("Enter new Savings:"))

Loan=int(input("Enter new loan amount:"))

Current=int(input("Enter new current amount:"))

Fixed_Deposit=int(input("Enter new fixed deposit amount:"))

print("before update")
print(bank)

#update the value for specified record

bank.loc[Acc_name]=[Savings,Loan,Current,Fixed_Deposit]

print("Data Successfully updated")

print("after update")

print(bank)

elif ch4==4:

break

elif ch==5:

while True:

print("Search Menu")

print("1. Search for the details of a specific personal account")

print("2. Search details for a specific column")

print("3. Exit")

ch5=int(input("Enter your choice(1-3):"))

if ch5==1:

st=input("Enter the name of personal account whose detail you want:")


print(f"Details of{st}:")

print(bank.loc[st])

elif ch5==2:

col=input("Enter the column name whose detail you want:")

print(f"Details of{col}:")

print(bank[col])

elif ch5==3:

break

elif ch==6:

while True:

print("Data Visualization Menu")

print("1. Line Graph")

print("2. Vertical Bar Graph")

print("3. Horizontal Bar Graph")

print("4. Exit")

ch6=int(input("Enter your Choice(1-4):"))

if ch6==1:

n=int(input("How many Personal Account from the top you want to

plot:"))

df=bank.head(n)
a=df["Savings"]

b=df["Loan"]

c=df["Current"]

d=df["Fixed Deposit"]

s=df.index

plt.plot(s,a,label="Savings")

plt.plot(s,b,label="Loan")

plt.plot(s,c,label="Current")

plt.plot(s,d,label="Fixed Deposit")

plt.title("Line Graph representing Personal Account")

plt.xlabel("Personal Account")

plt.ylabel("Count of Savings,Loan,Current,Fixed Deposit")

plt.legend()

plt.show()

elif ch6==2:

n=int(input("Enter how many Personal Account from the top you want to

plot:"))

df=bank.head(n)

df.plot(kind='bar')

plt.title("Bar Graph representing personal account")

plt.xlabel("Personal Account")
plt.ylabel("Count of Savings,Loan,Current,Fixed Deposit")

plt.show()

elif ch6==3:

n=int(input("How many Personal Account from the top you want to plot"))

df=bank.head(n)

df.plot(kind='barh')

plt.title("Horizontal Bar Graph representing Personal Account")

plt.xlabel("Personal Account")

plt.ylabel("Count of Savings,Loan,Current,Fixed Deposit")

plt.show()

elif ch6==4:

break

elif ch==7:

break
OUTPUT
BIBLIOGRAPHY

THIS PROJECT HAS BEEN SUCCESSFULLY COMPLETED WITH THE HELP OF:-

1. INFORMATICS PRACTICES BOOK CLASS 12th by Sumita Arora

2. INFORMATICS PRACTICES BOOK CLASS 11th by Sumita Arora

3. www.google.com

You might also like