Practical File on Data Analysis, Data Science & AI/ML
Student Name: NIKHIL PRASAD SAH
Roll No.: 2305561
Course: [Link] CSE
Session: 2025–2026
Index
1. Introduction to Python
2. Data Types & Structures
3. Data Cleaning using Pandas
4. Exploratory Data Analysis (EDA)
5. Data Visualization
6. Handling Missing Values
7. NumPy Operations
8. Simple Linear Regression
9. Logistic Regression
10. Decision Tree Classifier
11. K-Means Clustering
12. Mini Project: Fake News Detection
Experiment 1: Introduction to Python
Objective: Learn basic Python syntax for data science.
Code:
print("Hello, Data Science!")
a, b = 5, 10
print("Sum:", a+b)
Output:
Hello, Data Science!
Sum: 15
Experiment 2: Data Types & Structures
Objective: Understand Python collections.
Code:
my_list = [1,2,3,4]
my_tuple = (10,20,30)
my_dict = {"Name": "Nikhil", "Roll": 2305561}
print(my_list)
print(my_tuple)
print(my_dict)
Output:
[1, 2, 3, 4]
(10, 20, 30)
{'Name': 'Nikhil', 'Roll': 2305561}
Experiment 3: Data Cleaning using Pandas
Objective: Perform data cleaning operations.
Code:
import pandas as pd
data = {'Name':['A','B','C',None],'Age':[20,None,22,23]}
df = [Link](data)
print("Before Cleaning:\n", df)
df['Age'].fillna(df['Age'].mean(), inplace=True)
[Link](inplace=True)
print("After Cleaning:\n", df)
Experiment 4: Exploratory Data Analysis (EDA)
Objective: Explore dataset using Pandas.
Code:
import pandas as pd
df = [Link]({'Marks':[45,67,89,76,56]})
print("Summary:\n", [Link]())
Experiment 5: Data Visualization
Objective: Create simple plots.
Code:
import [Link] as plt
x = [1,2,3,4,5]
y = [2,4,6,8,10]
[Link](x,y,marker='o')
[Link]("Simple Line Plot")
[Link]("X-axis")
[Link]("Y-axis")
[Link]()
Experiment 6: Handling Missing Values
Objective: Manage missing data.
Code:
import pandas as pd
df = [Link]({'A':[1,2,None,4],'B':[None,2,3,4]})
print("Before:\n", df)
[Link](0, inplace=True)
print("After:\n", df)
Experiment 7: NumPy Operations
Objective: Perform array operations.
Code:
import numpy as np
arr = [Link]([1,2,3,4,5])
print("Array:", arr)
print("Mean:", [Link](arr))
print("Std Dev:", [Link](arr))
Experiment 8: Simple Linear Regression
Objective: Predict scores based on study hours.
Code:
import pandas as pd
from sklearn.linear_model import LinearRegression
X = [[1],[2],[3],[4],[5]]
y = [20,30,50,60,80]
model = LinearRegression()
[Link](X,y)
print("Prediction for 6 hours:", [Link]([[6]])[0])
Experiment 9: Logistic Regression
Objective: Binary classification example.
Code:
from sklearn.linear_model import LogisticRegression
X = [[0],[1],[2],[3],[4]]
y = [0,0,0,1,1]
model = LogisticRegression()
[Link](X,y)
print("Prediction for 2.5:", [Link]([[2.5]])[0])
Experiment 10: Decision Tree Classifier
Objective: Classify Iris dataset using decision tree.
Code:
from [Link] import load_iris
from [Link] import DecisionTreeClassifier
iris = load_iris()
model = DecisionTreeClassifier()
[Link]([Link], [Link])
print("Prediction:", [Link]([[Link][0]]))
Experiment 11: K-Means Clustering
Objective: Cluster simple data.
Code:
from [Link] import KMeans
import numpy as np
X = [Link]([[1,2],[1,4],[1,0],[4,2],[4,4],[4,0]])
kmeans = KMeans(n_clusters=2, random_state=0).fit(X)
print("Cluster Centers:", kmeans.cluster_centers_)
Experiment 12: Mini Project - Fake News Detection
Objective: Detect fake vs real news using ML pipeline.
Code:
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.naive_bayes import MultinomialNB
texts = ["This is real news","Fake news here"]
labels = [1,0]
vectorizer = CountVectorizer()
X = vectorizer.fit_transform(texts)
model = MultinomialNB()
[Link](X, labels)
print("Prediction:", [Link]([Link](["This is fake news"]))[0])