INDEX No 1 2 3 Practical Date Write a program to generate a series of float numbers from 41.0 to 60.0 with an increment of 2.5 each. Write a program to generate a series of 10 numbers with a scalar value of 44. Create a panda’s series from a dictionary of values and a ndarray. 4 Given a Series, print all the elements that are above the 75th percentile. 5 Create a data frame for examination results and display row labels, column labels data types of each column and the dimensions. 6 7 Create a dataframe and iterate them over rows. Create a dataframe and print it along with their index using iteritems(). 8 Create the following DataFrame Sales containing year wise sales figures for five salespersons in INR. Use the years as column labels, and salesperson names. 9 Consider above dataframe and write code to do the following: 1. Display the last two rows of Sales. 2. Display the first two columns of Sales. 10 Use above dataframe and do the following: 1. Change the DataFrame Sales such that it becomes its transpose. 2. Display the sales made by all sales persons in the year 2018. 3. Display the sales made by Kapil and Mohini in the year 2019 and 2020. 4. Add data to Sales for salesman Nirali where the sales made are 5. [221, 178, 165, 177, 210] in the years [2018, 2019, 2020, 2021] respectively Signature 6. Delete the data for the year 2018 from the DataFrame Sales. 7. Delete the data for sales man Shikhar from the DataFrame Sales. 8. Change the name of the salesperson Kamini to Rani and Kapil to Anil. 9. Update the sale made by Mohini in 118 to 150 in 2018. 11 12 13 14 Plot the following data on a line chart and customize chart according to below-given instructions: Month January February March April May Sales 510 350 475 580 600 1. Write a title for the chart "The Monthly Sales Report" 2. Write the appropriate titles of both the axes 3. Write code to Display legends 4. Display blue color for the line 5. Use the line style - dashed 6. Display diamond style markers on data points Pratyush Garments has recorded the following data into their register for their income from cotton clothes and jeans. Plot them on the line chart. Day Monday Tuesday Wednesday Thursday Friday Cotton 450 560 400 605 580 Jeans 490 600 425 610 625 Apply following customization to the line chart. 1. Write a title for the chart "The Weekly Garment Orders". 2. Write the appropriate titles of both the axes. 3. Write code to Display legends. 4. Display your choice of colors for both the lines cotton and jeans. 5. Use the line style - dotted for cotton and dashdot for jeans. 6. Display plus markers on cotton and x markers of jeans. Observe the given data for monthly views of one of the youtube channels for 6 months. Plot them on the line chart. Month January February March April May June Views 2500 2100 1700 3500 3000 3800 Apply the following customizations to the chart: 1. Give the title for the chart - "Youtube Stats" 2. Use the "Month" label for X-Axis and "Views" for Y-Axis. 3. Display legends. 4. Use dashed lines with the width 5 point. 5. Use red color for the line. 6. Use dot marker with blue edge color and black fill color. Write a program to plot a range from 1 to 30 with step value 4. Use following algebraic expression to show data: y = 5*x+2 Display following bowling figures through bar chart: 15 Overs 1 2 3 4 Runs 6 18 10 5 Part 1: Data Handling Using Pandas - I [1] Write a program to generate a series of float numbers from 41.0 to 60.0 with an increment of 2.5. import pandas as pd import numpy as np def fl_ser(): n = np.arange(41,60,2.5) s = pd.Series(n) print(s) fl_ser() [2] Write a program to generate a series of 10 numbers with a scalar value of 44. import pandas as pd def fl_scv(): print(pd.Series(44,range(1,11))) fl_scv() [3] Create a panda’s series from a dictionary of values and a ndarray. import pandas as pd import numpy as np def pro3(): #Creating series from a dictionary d={'Jan':31,'Feb':28,'Mar':31,'Apr':30} s=pd.Series(d) print("Series from dictionary") print("~~~~~~~~~~~~~~~~~~~~~~~") #Creating series from an ndarray ar=np.array([2,3,4,5,6]) print("\nSeries from ndarray") print("~~~~~~~~~~~~~~~~~~~~~~~") s1=pd.Series(ar) print(s1) pro3() print(s) [4] Given a Series, print all the elements that are above the 75th percentile. import pandas as pd def Ser_stumarks(): std_marks = [] for i in range(1,6): m = int(input("Enter the Percentile:")) std_marks.append(m) s = pd.Series(index=range(1201,1206),data=std_marks) print("Data fetched from the series are:") print(s[s>=75]) Ser_stumarks() [5] Create a data frame for examination results and display row labels, column labels data types of each column and the dimensions. import pandas as pd def df_std_res(): res={'Amit':[76,78,75,66,68], 'Shialesh':[78,56,77,49,55], 'Rani':[90,91,93,97,99], 'Madan':[55,48,59,60,66], 'Radhika':[78,79,85,88,86]} df=pd.DataFrame(res) print("Prinitng row labels in a list:") print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") idx=df.index l=list(idx) print(l) print("Prinitng row labels in a list:") print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") print("[",end=" ") for col in df.columns: print(col,end=" ") print("]") print("Printing Data Types of each column") print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") print(df.dtypes) print("Printing dimensions of Data Frame") print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") print(df.ndim) df_std_res() [6] Create a dataframe and iterate them over rows. import pandas as pd data = [["Virat",55,66,31],["Rohit",88,66,43],[ "Hardik",99,101,68]] players = pd.DataFrame(data, columns 2","Match-3"]) = ["Name","Match-1","Match- print("Iterating by rows:") print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") index, row in players.iterrows(): print(index, row.values) print("Iterating by columns:") print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~") for index, row in players.iterrows(): print(index, for row["Name"],row["Match-1"], row["Match-2"],row["Match-3"]) [7] Create a dataframe and print it along with their index using iteritems(). import pandas as pd def df_operations(): sc_4yrs={2016:{'Virat Kohli':2595,'Rohit Sharma':2406,'Shikhar Dhawan':2378}, 2017:{'Virat Kohli':2818,'Rohit Sharma':2613,'Shikhar Dhawan':2295}, 2018:{'Virat Kohli':2735,'Rohit Sharma':2406,'Shikhar Dhawan':2378}, 2019:{'Virat Kohli':2455,'Rohit Sharma':2310,'Shikhar Dhawan':1844}} df=pd.DataFrame(sc_4yrs) print(df) print("-----------------------------------------------------------------------") for (year,runs) in df.iteritems(): print("Year:",year) print(runs) df_operations() [8] Create the following DataFrame Sales containing year wise sales figures for five salespersons in INR. Use the years as column labels, and salesperson names as row labels. 2018 2019 2020 2021 Kapil 110 205 177 189 Kamini 130 165 175 190 Shikhar 115 206 157 179 Mohini 118 198 183 169 1. Create the DataFrame. 2. Display the row labels of Sales. 3. Display the column labels of Sales. 4. Display the data types of each column of Sales. 5. Display the dimensions, shape, size and values of Sales. import pandas as pd #Creating DataFrame d = {2018:[110,130,115 ,118], 2019:[205,165,175, 190], 2020:[115,206,157,179], 2021:[118,198,183,169]} sales=pd.DataFrame(d,index=['Kapil','Kamini','Shikhar','Mohini ']) #Display row lables print("Row Lables:\n",sales.index) print("~~~~~~~~~~~~~~~~~~~~~~~~~~\n") #Display column lables print("Column Lables:\n",sales.columns) print("~~~~~~~~~~~~~~~~~~~~~~~~~~\n") #Display data type print("\nDisplay column data types") print("~~~~~~~~~~~~~~~~~~~~~~~~~~") print(sales.dtypes) print("\nDisplay the dimensions, shape, size and values of Sales") print("~~~~~~~~~~~~~~~~~~~~~~~~~~") print("Dimensions:",sales.ndim) print("Shape:",sales.shape) print("Size:",sales.size) print("Values:",sales.values) [9] Consider above dataframe and write code to do the following: 1. Display the last two rows of Sales. 2. Display the first two columns of Sales. import pandas as pd #Creating DataFrame d = {2018:[110,130,115,118], 2019:[205,165,175,190], 2020:[115,206,157,179], 2021:[118,198,183,169]} sales=pd.DataFrame(d,index=['Kapil','Kamini','Shikhar','Mohini ']) print("Display last two rows of DataFrame:") print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") #Method 1 print("Using tail function:") print(Sales.tail(2)) #Method 2 print("Using iloc") print(Sales.iloc[-2:]) #With Specific Columns, I have prnted two columns print("Sepcific Columns") print(Sales.iloc[-2:,-2:]) print("Display first two columns of Dataframe:") print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") print(Sales[Sales.columns[0:2]]) [10] Use above (Question 9) dataframe and do the following: 1. Change the DataFrame Sales such that it becomes its transpose. 2. Display the sales made by all sales persons in the year 2018. 3. Display the sales made by Kapil and Mohini in the year 2019 and 2020. 4. Add data to Sales for salesman Nirali where the sales made are o [221, 178, 165, 177, 210] in the years [2018, 2019, 2020, 2021] respectively 5. Delete the data for the year 2018 from the DataFrame Sales. 6. Delete the data for sales man Shikhar from the DataFrame Sales. 7. Change the name of the salesperson Kamini to Rani and Kapil to Anil. 8. Update the sale made by Mohini in 118 to 150 in 2018. import pandas as pd #Creating DataFrame d = {2018:[110,130,115,118], 2019:[205,165,175,190], 2020:[115,206,157,179], 2021:[118,198,183,169]} sales=pd.DataFrame(d,index=['Kapil','Kamini','Shikhar','Mohini ']) print("Transpose:") print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") print(sales.T) print("\nSales made by each salesman in 2018") print(sales.loc[:,2018]) print("Sales made by Kapil and Mohini:") print(sales.loc[['Kapil','Mohini'], [2019,2020]]) print("Add Data:") sales.loc["Nirali"]=[221, 178, 165, 177] print(sales) print("Delete Data for 2018:") sales=sales.drop(columns=2018) print(sales) Sales.drop(columns=2018,inplace=True) print(Sales) sales.drop("kinshuk") print(sales) sales=sales.rename({"Kamini":"Rani","Kapil":"Anil"},axis="inde x") print(sales) sales.loc[sales.index=="Mohini",2018 ]=150 print(sales) [11] Plot the following data on a line chart and customize chart according to belowgiven instructions: Month January February March April May Sales 510 350 475 580 600 Weekly Sales Report 1. Write a title for the chart "The Monthly Sales Report" 2. Write the appropriate titles of both the axes 3. Write code to Display legends 4. Display blue color for the line 5. Use the line style - dashed 6. Display diamond style markers on data points import matplotlib.pyplot as pp mon =['January','February','March','April','May'] sales = [510,350,475,580,600] pp.plot(mon,sales,label='Sales',color='b',linestyle='dashed',m arker='D') pp.title("The Monthly Sales Report") pp.xlabel(" Months") pp.ylabel(" Sales") pp.legend() pp.show() Ouptut: [12] Pratyush Garments has recorded the following data into their register for their income from cotton clothes and jeans. Plot them on the line chart. Day Monday Tuesday Wednesday Thursday Friday Cotton 450 560 400 605 580 Jeans 600 425 610 625 490 Apply following customization to the line chart. 1. Write a title for the chart "The Weekly Garment Orders". 2. Write the appropriate titles of both the axes. 3. Write code to Display legends. 4. Display your choice of colors for both the lines cotton and jeans. 5. Use the line style - dotted for cotton and dashdot for jeans. 6. Display plus markers on cotton and x markers of jeans. import matplotlib.pyplot as pp day =['Monday','Tuesday','Wednesday','Thursday','Fr iday'] ct = [450,560,400,605,580] js = [490,600,425,610,625] pp.plot(day,ct,label='Cotton',color='g',linestyle='d otted',mar ker='+') pp.plot(day,js,label='Food',color='m',linestyle='das hdot',mark er='x') pp.title("The Weekly Garment Orders") pp.xlabel("Days") pp.ylabel("Orders") pp.legend() pp.show() Output: [13] Observe the given data for monthly views of one of the youtube channels for 6 months. Plot them on the line chart. Month January February March April May June Views 2500 2100 1700 3500 3000 3800 Apply the following customizations to the chart: 1. Give the title for the chart - "Youtube Stats" 2. Use the "Month" label for X-Axis and "Views" for Y-Axis. 3. Display legends. 4. Use dashed lines with the width 5 point. 5. Use red color for the line. 6. Use dot marker with blue edge color and black fill color. import matplotlib.pyplot as pp mon =['January','February','March','April','May','June' ] views = [2500,2100,1700,3500,3000,3800] pp.plot(mon,views,label='Views State',color='r',linestyle='dashed', linewidth=4,\ marker='o', markerfacecolor='k', markeredgecolor='b') pp.title("Youtube Stats") pp.xlabel("Months") pp.ylabel("Views") pp.legend() pp.show() [14] Write a program to plot a range from 1 to 30 with step value 4. Use following algebraic expression to show data.y = 5*x+2 import matplotlib.pyplot as pp import numpy as np np.arange(1,30,4) pp.plot(x,y) x = y = 5 * x + 2 pp.show() [15] Display following bowling figures through bar chart: Overs Runs 1 6 2 18 3 10 4 5 import matplotlib.pyplot as pp overs =[1,2,3,4] runs=[6,18,10,5] pp.bar(overs,runs,color='m') pp.xlabel('Overs') pp.xlabel('Runs') pp.title('Bowling Spell Analysis') pp.show()