Assignment 2

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

28/02/2023, 10:59 Assignment 2

In [1]: import pandas as pd


import numpy as np

In [2]: dict1={"Maths_Score":[60,62,65,78,77,np.nan,78,80,66,67],
"Reading_Score":[70,99,90,54,89,65,80,65,89,20],
"Writing_Score":[70,43,80,56,95,56,99,45,90,100],
"Placement_Count":[np.nan,7,8,5,9,8,6,9,5,3],
"Region":[np.nan,"Buldhana","Kothrud","Baner","Nagpur","Dadar",np.nan
"Gender":["Male","Female","Female","Male","Male","Male","Female","Male
"Placement_Count_Year":[2020,2022,2018,2017,2023,2015,2012,np.nan,2010

In [3]: df=pd.DataFrame(dict1)

In [4]: df

Out[4]: Maths_Score Reading_Score Writing_Score Placement_Count Region Gender Placement

0 60.0 70 70 NaN NaN Male

1 62.0 99 43 7.0 Buldhana Female

2 65.0 90 80 8.0 Kothrud Female

3 78.0 54 56 5.0 Baner Male

4 77.0 89 95 9.0 Nagpur Male

5 NaN 65 56 8.0 Dadar Male

6 78.0 80 99 6.0 NaN Female

7 80.0 65 45 9.0 Wardha Male

8 66.0 89 90 5.0 Surat Female

9 67.0 20 100 3.0 NaN Male

In [5]: df.isnull().sum()

Maths_Score 1
Out[5]:
Reading_Score 0
Writing_Score 0
Placement_Count 1
Region 3
Gender 0
Placement_Count_Year 1
dtype: int64

In [6]: df.dropna()

Out[6]: Maths_Score Reading_Score Writing_Score Placement_Count Region Gender Placement

1 62.0 99 43 7.0 Buldhana Female

2 65.0 90 80 8.0 Kothrud Female

3 78.0 54 56 5.0 Baner Male

4 77.0 89 95 9.0 Nagpur Male

8 66.0 89 90 5.0 Surat Female

In [7]: df.dropna(axis=1)

localhost:8888/nbconvert/html/Desktop/Akshata/Assignment 2.ipynb?download=false 1/9


28/02/2023, 10:59 Assignment 2

Out[7]: Reading_Score Writing_Score Gender

0 70 70 Male

1 99 43 Female

2 90 80 Female

3 54 56 Male

4 89 95 Male

5 65 56 Male

6 80 99 Female

7 65 45 Male

8 89 90 Female

9 20 100 Male

In [8]: df.dropna(how="all")

Out[8]: Maths_Score Reading_Score Writing_Score Placement_Count Region Gender Placement

0 60.0 70 70 NaN NaN Male

1 62.0 99 43 7.0 Buldhana Female

2 65.0 90 80 8.0 Kothrud Female

3 78.0 54 56 5.0 Baner Male

4 77.0 89 95 9.0 Nagpur Male

5 NaN 65 56 8.0 Dadar Male

6 78.0 80 99 6.0 NaN Female

7 80.0 65 45 9.0 Wardha Male

8 66.0 89 90 5.0 Surat Female

9 67.0 20 100 3.0 NaN Male

In [9]: df.dropna(thresh=2)

Out[9]: Maths_Score Reading_Score Writing_Score Placement_Count Region Gender Placement

0 60.0 70 70 NaN NaN Male

1 62.0 99 43 7.0 Buldhana Female

2 65.0 90 80 8.0 Kothrud Female

3 78.0 54 56 5.0 Baner Male

4 77.0 89 95 9.0 Nagpur Male

5 NaN 65 56 8.0 Dadar Male

6 78.0 80 99 6.0 NaN Female

7 80.0 65 45 9.0 Wardha Male

8 66.0 89 90 5.0 Surat Female

9 67.0 20 100 3.0 NaN Male

localhost:8888/nbconvert/html/Desktop/Akshata/Assignment 2.ipynb?download=false 2/9


28/02/2023, 10:59 Assignment 2

In [10]: df.dropna(subset=["Region","Gender"])

Out[10]: Maths_Score Reading_Score Writing_Score Placement_Count Region Gender Placement

1 62.0 99 43 7.0 Buldhana Female

2 65.0 90 80 8.0 Kothrud Female

3 78.0 54 56 5.0 Baner Male

4 77.0 89 95 9.0 Nagpur Male

5 NaN 65 56 8.0 Dadar Male

7 80.0 65 45 9.0 Wardha Male

8 66.0 89 90 5.0 Surat Female

In [ ]:

In [11]: df

Out[11]: Maths_Score Reading_Score Writing_Score Placement_Count Region Gender Placement

0 60.0 70 70 NaN NaN Male

1 62.0 99 43 7.0 Buldhana Female

2 65.0 90 80 8.0 Kothrud Female

3 78.0 54 56 5.0 Baner Male

4 77.0 89 95 9.0 Nagpur Male

5 NaN 65 56 8.0 Dadar Male

6 78.0 80 99 6.0 NaN Female

7 80.0 65 45 9.0 Wardha Male

8 66.0 89 90 5.0 Surat Female

9 67.0 20 100 3.0 NaN Male

In [12]: df.replace(to_replace=np.nan,value=8)

Out[12]: Maths_Score Reading_Score Writing_Score Placement_Count Region Gender Placement

0 60.0 70 70 8.0 8 Male

1 62.0 99 43 7.0 Buldhana Female

2 65.0 90 80 8.0 Kothrud Female

3 78.0 54 56 5.0 Baner Male

4 77.0 89 95 9.0 Nagpur Male

5 8.0 65 56 8.0 Dadar Male

6 78.0 80 99 6.0 8 Female

7 80.0 65 45 9.0 Wardha Male

8 66.0 89 90 5.0 Surat Female

9 67.0 20 100 3.0 8 Male

localhost:8888/nbconvert/html/Desktop/Akshata/Assignment 2.ipynb?download=false 3/9


28/02/2023, 10:59 Assignment 2

In [13]: df["Region"].replace(to_replace=np.nan,value="Kota")

0 Kota
Out[13]:
1 Buldhana
2 Kothrud
3 Baner
4 Nagpur
5 Dadar
6 Kota
7 Wardha
8 Surat
9 Kota
Name: Region, dtype: object

In [14]: df.fillna(0)

Out[14]: Maths_Score Reading_Score Writing_Score Placement_Count Region Gender Placement

0 60.0 70 70 0.0 0 Male

1 62.0 99 43 7.0 Buldhana Female

2 65.0 90 80 8.0 Kothrud Female

3 78.0 54 56 5.0 Baner Male

4 77.0 89 95 9.0 Nagpur Male

5 0.0 65 56 8.0 Dadar Male

6 78.0 80 99 6.0 0 Female

7 80.0 65 45 9.0 Wardha Male

8 66.0 89 90 5.0 Surat Female

9 67.0 20 100 3.0 0 Male

In [15]: df["Maths_Score"]=df["Maths_Score"].fillna(df["Maths_Score"].mean())

In [16]: df

Out[16]: Maths_Score Reading_Score Writing_Score Placement_Count Region Gender Placement

0 60.000000 70 70 NaN NaN Male

1 62.000000 99 43 7.0 Buldhana Female

2 65.000000 90 80 8.0 Kothrud Female

3 78.000000 54 56 5.0 Baner Male

4 77.000000 89 95 9.0 Nagpur Male

5 70.333333 65 56 8.0 Dadar Male

6 78.000000 80 99 6.0 NaN Female

7 80.000000 65 45 9.0 Wardha Male

8 66.000000 89 90 5.0 Surat Female

9 67.000000 20 100 3.0 NaN Male

In [17]: df["Placement_Count"]=df["Placement_Count"].fillna(df["Placement_Count"].mea

In [18]: df

localhost:8888/nbconvert/html/Desktop/Akshata/Assignment 2.ipynb?download=false 4/9


28/02/2023, 10:59 Assignment 2

Out[18]: Maths_Score Reading_Score Writing_Score Placement_Count Region Gender Placement

0 60.000000 70 70 6.666667 NaN Male

1 62.000000 99 43 7.000000 Buldhana Female

2 65.000000 90 80 8.000000 Kothrud Female

3 78.000000 54 56 5.000000 Baner Male

4 77.000000 89 95 9.000000 Nagpur Male

5 70.333333 65 56 8.000000 Dadar Male

6 78.000000 80 99 6.000000 NaN Female

7 80.000000 65 45 9.000000 Wardha Male

8 66.000000 89 90 5.000000 Surat Female

9 67.000000 20 100 3.000000 NaN Male

In [19]: df["Placement_Count_Year"]=df["Placement_Count_Year"].fillna(df["Placement_C

In [20]: df

Out[20]: Maths_Score Reading_Score Writing_Score Placement_Count Region Gender Placement

0 60.000000 70 70 6.666667 NaN Male

1 62.000000 99 43 7.000000 Buldhana Female

2 65.000000 90 80 8.000000 Kothrud Female

3 78.000000 54 56 5.000000 Baner Male

4 77.000000 89 95 9.000000 Nagpur Male

5 70.333333 65 56 8.000000 Dadar Male

6 78.000000 80 99 6.000000 NaN Female

7 80.000000 65 45 9.000000 Wardha Male

8 66.000000 89 90 5.000000 Surat Female

9 67.000000 20 100 3.000000 NaN Male

In [23]: df["Region"]=df["Region"].fillna("Kota")

In [24]: df

localhost:8888/nbconvert/html/Desktop/Akshata/Assignment 2.ipynb?download=false 5/9


28/02/2023, 10:59 Assignment 2

Out[24]: Maths_Score Reading_Score Writing_Score Placement_Count Region Gender Placement

0 60.000000 70 70 6.666667 Kota Male

1 62.000000 99 43 7.000000 Buldhana Female

2 65.000000 90 80 8.000000 Kothrud Female

3 78.000000 54 56 5.000000 Baner Male

4 77.000000 89 95 9.000000 Nagpur Male

5 70.333333 65 56 8.000000 Dadar Male

6 78.000000 80 99 6.000000 Kota Female

7 80.000000 65 45 9.000000 Wardha Male

8 66.000000 89 90 5.000000 Surat Female

9 67.000000 20 100 3.000000 Kota Male

In [32]: df=pd.DataFrame(dict1)
df

Out[32]: Maths_Score Reading_Score Writing_Score Placement_Count Region Gender Placement

0 60.0 70 70 NaN NaN Male

1 62.0 99 43 7.0 Buldhana Female

2 65.0 90 80 8.0 Kothrud Female

3 78.0 54 56 5.0 Baner Male

4 77.0 89 95 9.0 Nagpur Male

5 NaN 65 56 8.0 Dadar Male

6 78.0 80 99 6.0 NaN Female

7 80.0 65 45 9.0 Wardha Male

8 66.0 89 90 5.0 Surat Female

9 67.0 20 100 3.0 NaN Male

In [33]: df["Maths_Score"]=df["Maths_Score"].fillna(df["Maths_Score"].min())

In [34]: df

localhost:8888/nbconvert/html/Desktop/Akshata/Assignment 2.ipynb?download=false 6/9


28/02/2023, 10:59 Assignment 2

Out[34]: Maths_Score Reading_Score Writing_Score Placement_Count Region Gender Placement

0 60.0 70 70 NaN NaN Male

1 62.0 99 43 7.0 Buldhana Female

2 65.0 90 80 8.0 Kothrud Female

3 78.0 54 56 5.0 Baner Male

4 77.0 89 95 9.0 Nagpur Male

5 60.0 65 56 8.0 Dadar Male

6 78.0 80 99 6.0 NaN Female

7 80.0 65 45 9.0 Wardha Male

8 66.0 89 90 5.0 Surat Female

9 67.0 20 100 3.0 NaN Male

In [29]: df=pd.DataFrame(dict1)
df

Out[29]: Maths_Score Reading_Score Writing_Score Placement_Count Region Gender Placement

0 60.0 70 70 NaN NaN Male

1 62.0 99 43 7.0 Buldhana Female

2 65.0 90 80 8.0 Kothrud Female

3 78.0 54 56 5.0 Baner Male

4 77.0 89 95 9.0 Nagpur Male

5 NaN 65 56 8.0 Dadar Male

6 78.0 80 99 6.0 NaN Female

7 80.0 65 45 9.0 Wardha Male

8 66.0 89 90 5.0 Surat Female

9 67.0 20 100 3.0 NaN Male

In [30]: df["Maths_Score"]=df["Maths_Score"].fillna(df["Maths_Score"].max())

In [31]: df

localhost:8888/nbconvert/html/Desktop/Akshata/Assignment 2.ipynb?download=false 7/9


28/02/2023, 10:59 Assignment 2

Out[31]: Maths_Score Reading_Score Writing_Score Placement_Count Region Gender Placement

0 60.0 70 70 NaN NaN Male

1 62.0 99 43 7.0 Buldhana Female

2 65.0 90 80 8.0 Kothrud Female

3 78.0 54 56 5.0 Baner Male

4 77.0 89 95 9.0 Nagpur Male

5 80.0 65 56 8.0 Dadar Male

6 78.0 80 99 6.0 NaN Female

7 80.0 65 45 9.0 Wardha Male

8 66.0 89 90 5.0 Surat Female

9 67.0 20 100 3.0 NaN Male

In [35]: df=pd.DataFrame(dict1)
df

Out[35]: Maths_Score Reading_Score Writing_Score Placement_Count Region Gender Placement

0 60.0 70 70 NaN NaN Male

1 62.0 99 43 7.0 Buldhana Female

2 65.0 90 80 8.0 Kothrud Female

3 78.0 54 56 5.0 Baner Male

4 77.0 89 95 9.0 Nagpur Male

5 NaN 65 56 8.0 Dadar Male

6 78.0 80 99 6.0 NaN Female

7 80.0 65 45 9.0 Wardha Male

8 66.0 89 90 5.0 Surat Female

9 67.0 20 100 3.0 NaN Male

In [36]: df["Maths_Score"]=df["Maths_Score"].fillna(df["Maths_Score"].std())

In [37]: df

localhost:8888/nbconvert/html/Desktop/Akshata/Assignment 2.ipynb?download=false 8/9


28/02/2023, 10:59 Assignment 2

Out[37]: Maths_Score Reading_Score Writing_Score Placement_Count Region Gender Placement

0 60.000000 70 70 NaN NaN Male

1 62.000000 99 43 7.0 Buldhana Female

2 65.000000 90 80 8.0 Kothrud Female

3 78.000000 54 56 5.0 Baner Male

4 77.000000 89 95 9.0 Nagpur Male

5 7.826238 65 56 8.0 Dadar Male

6 78.000000 80 99 6.0 NaN Female

7 80.000000 65 45 9.0 Wardha Male

8 66.000000 89 90 5.0 Surat Female

9 67.000000 20 100 3.0 NaN Male

In [ ]:

localhost:8888/nbconvert/html/Desktop/Akshata/Assignment 2.ipynb?download=false 9/9

You might also like