Certificate
This is to certify that the project entitled
"WEATHER DATA ANALYSIS
(2025–2026)" is the bonafide work of
Ramkrishna Mehra, student of Class
XII, Vardhaman Public School, Itarsi
(M.P.), submitted in partial fulfillment of
the requirements for the AISSCE
2025–26 Examination in the subject
Informatics Practices (065) under my
supervision and guidance. Signature of
Student: Signature of Teacher/Guide:
Mr. Deepak Arya Signature of Principal:
Place: Itarsi Date:
Acknowledgment
I express my sincere gratitude to my
teacher, Mr. Deepak Arya, for his
invaluable guidance, encouragement,
and constant support throughout this
project. I also extend my thanks to our
Principal and my classmates for their
help and motivation during this work.
This project has helped me understand
the real-life application of data analysis
using Python and has improved my
practical understanding of Informatics
Practices.
Table of Contents
1. Introduction (Python)
2. Theoretical Background (Database Concepts)
3. Introduction of Topic
4. Problem Definition & Objective
5. System Requirements
6. System Implementation
7. System Design & Development
8. Source Code
9. Output
10. Conclusion
11. References
Introduction (Python)
Python is a powerful, high-level programming language created by Guido van
Rossum in 1991 and maintained by the Python Software Foundation. It emphasizes
code readability and simplicity, allowing developers to express logic in fewer lines of
code compared to other languages like C++ or Java.
In this project, Python is used to manage and analyze weather data efficiently using
its built-in libraries such as pandas and matplotlib.
Theoretical Background (Database Concepts)
A Database is an organized collection of information stored so that it can be easily
accessed, managed, and updated. In most Informatics Practices projects,
databases are handled through RDBMS such as MySQL or Oracle.
In this project, CSV files are used as a lightweight alternative to store tabular data in
plain text, easily handled with Python’s pandas library.
Introduction of Topic
The Weather Data Analysis project focuses on recording and analyzing daily
weather information such as temperature, humidity, and rainfall. Using Python,
users can add, view, and search for weather records, and visualize them using a
simple line graph.
Problem Definition & Objective
Traditional weather data storage methods make it difficult to analyze and visualize
information. This project aims to:
• Store weather data systematically using CSV files.
• Allow users to add and retrieve information easily.
• Analyze the data and identify temperature trends.
• Generate a line graph showing temperature variation over time.
System Requirements
To develop and run the Weather Data Analysis project successfully, the following
hardware and software specifications were used:
Hardware Requirements
Processor: Intel Core i3 or higher
RAM: Minimum 4 GB
Storage: 500 MB free space
Software Requirements
Operating System: Windows 10/11 or Linux
Programming Language: Python 3.9+
Libraries Used: pandas, matplotlib, os
IDE: PyCharm / VS Code / IDLE
File Format: CSV (Comma-Separated Values)
Source Code
import pandas as pd
import os
import matplotlib.pyplot as plt
file = "weather.csv"
if not os.path.exists(file):
df = pd.DataFrame(columns=["Date", "Temperature", "Humidity",
"Rainfall"])
df.to_csv(file, index=False)
def add_record():
date = input("Enter Date (YYYY-MM-DD): ")
temp = float(input("Enter Temperature (°C): "))
hum = float(input("Enter Humidity (%): "))
rain = float(input("Enter Rainfall (mm): "))
df = pd.DataFrame([[date, temp, hum, rain]], columns=["Date",
"Temperature", "Humidity", "Rainfall"])
df.to_csv(file, mode='a', header=False, index=False)
print("Record added successfully!")
def search_date():
date = input("Enter date to search: ")
df = pd.read_csv(file)
result = df[df["Date"] == date]
print(result if not result.empty else "No record found.")
def plot_graph():
df = pd.read_csv(file)
plt.plot(df["Date"], df["Temperature"], marker='o', color='blue')
plt.title("Temperature Variation Over Time")
plt.xlabel("Date")
plt.ylabel("Temperature (°C)")
plt.grid(True)
plt.show()
while True:
print("\n=== WEATHER DATA ANALYSIS ===")
print("1. Add Record")
print("2. Search by Date")
print("3. Show Temperature Graph")
print("4. Exit")
ch = input("Enter choice: ")
if ch == '1':
add_record()
elif ch == '2':
search_date()
elif ch == '3':
plot_graph()
elif ch == '4':
break
else:
print("Invalid choice! Please try again.")
Output
=== WEATHER DATA ANALYSIS ===
1. Add Record
2. Search by Date
3. Show Temperature Graph
4. Exit
Enter choice: 2
Enter date to search: 2025-10-29
Date: 2025-10-29 | Temperature: 31.2°C | Humidity: 60% | Rainfall: 8mm
Below is the generated temperature line graph for sample data.
Conclusion
The Weather Data Analysis project showcases how Python can be used for
handling and analyzing real-world data. By combining pandas and matplotlib, the
project provides an interactive way to store and visualize weather patterns
effectively.
This project has helped the student gain hands-on experience with data analysis,
file handling, and graphical representation using Python.
References
1. Python Official Documentation – https://docs.python.org/3/
2. W3Schools Python Tutorial – https://www.w3schools.com/python/
3. GeeksforGeeks – Python pandas and matplotlib tutorials
4. CBSE Informatics Practices Class XII Textbook