# [CBSE] Informatics Practices Syllabus class 12 (2022-23)

Looking for the syllabus of Informatics Practices (IP) subject of class 12 CBSE Board for 2022-23 Session.

We have given complete detail of IP subject syllabus of class 12 of CBSE Board for 2022-23.

## Syllabus of IP subject class 12 CBSE Board 2022-23

Here is the complete detail

Theory Paper 70 Marks (Time 3 Hrs)

Practical Paper 30 Marks

Distribution of Marks and Periods

Unit 1: Data Handling using Pandas and Data Visualization

Data Handling using Pandas -I

Introduction to Python libraries- Pandas, Matplotlib.

Data structures in Pandas – Series and data frames.

Series: Creation of series from ndarray, dictionary, scalar value; mathematical operations; series attributes, head and tail functions; selection, indexing, and slicing.

Data Frames: the creation of data frames from the dictionary of series, list of dictionaries, text/CSV files, display, iteration. Operations on rows and columns: add ( insert /append) , select, delete (drop column and row), rename, Head and Tail functions, indexing using labels, Boolean indexing; joining, merging, and concatenation of data frames.

Importing/Exporting Data between CSV files and Data Frames. (for practicals only)

Data handling using Pandas – II

Descriptive Statistics: max, min, count, sum, mean, median, mode, quartile, Standard deviation, variance.

Data Frame operations: Aggregation, group by, Sorting, Deleting and Renaming Index, Pivoting.

Handling missing values – dropping and filling.

Importing/Exporting Data between MySQL database and Pandas.

Data Visualization: Purpose of plotting, drawing, and saving plots using Matplotlib (line plot, bar graph, histogram, pie chart, frequency polygon, box plot and scatter plot).

Customizing plots: color, style (dashed, dotted), width; adding label, title, and legend in plots.

Unit 2: Database Query using SQL

Math functions: POWER (), ROUND (), MOD ().

Text functions: UCASE ()/UPPER (), LCASE ()/LOWER (), MID ()/SUBSTRING ()/SUBSTR (), LENGTH (), LEFT (), RIGHT (), INSTR (), LTRIM (), RTRIM (), TRIM ().

Date Functions: NOW (), DATE (), MONTH (), MONTHNAME (), YEAR (), DAY (), DAYNAME ().

Aggregate Functions: MAX (), MIN (), AVG (), SUM (), COUNT (); using COUNT (*).

Querying and manipulating data using Group by, Having, Order by.

Operations on Relations – Union, Intersection, Minus, Cartesian Product, JOIN (Cartesian Join, Equi Join, Natural Join).

Unit 3: Introduction to Computer Networks

Introduction to Networks, Types of network: LAN, MAN, WAN.

Network Devices: modem, hub, switch, repeater, router, gateway Network Topologies: Star, Bus, Tree, Mesh.

Introduction to Internet, URL, WWW, and its applications- Web, email, Chat, VoIP.

Website: Introduction, the difference between a website and webpage, static vs dynamic web page, web server, and hosting of a website.

Web Browsers: Introduction, commonly used browsers, browser settings, add-ons and plug-ins, cookies.

Unit 4: Societal Impacts

Digital footprint, net and communication etiquettes, data protection, intellectual property rights (IPR), plagiarism, licensing and copyright, free and open-source software (FOSS), cybercrime and cyber laws, hacking, phishing, cyberbullying, an overview of Indian IT Act.

E-waste: hazards and management.

Awareness about health concerns related to the usage of technology.

Project Work

The aim of the class project is to create tangible and useful IT applications. The learner may identify a realworld problem by exploring the environment. e.g. Students can visit shops/business places, communities or other organizations in their localities and enquire about the functioning of the organization, and how data are generated, stored and managed.

The learner can take data stored in a csv or database file and analyze it using Python libraries and generate appropriate charts to visualize. If an organization is maintaining data offline, then the learner should create a database using MySQL and store the data in tables. Data can be imported in Pandas for analysis and visualization.

Learners can use Python libraries of their choice to develop software for their school or any other social good.

Learners should be sensitized to avoid plagiarism and violation of copyright issues while working on projects.

Teachers should take the necessary measures for this. Any resources (data, images, etc.) used in the project must be suitably referenced.

The project can be done individually or in groups of 2 to 3 students. The project should be started by students at least 6 months before the submission deadline.

Distribution of Practical Marks

Suggested Practical List

7.1 Data Handling

1. Create a pandas series from a dictionary of values and an ndarray
2. Given a Series, print all the elements that are above the 75th percentile.
3. Create a Data Frame quarterly sales where each row contains the item category, item name, and
expenditure. Group the rows by the category, and print the total expenditure per category.
4. Create a data frame based on ecommerce data and generate descriptive statistics (mean, median,
mode, quartile, and variance)
5. Create a data frame for examination result and display row labels, column labels data types of each
column and the dimensions
6. Filter out rows based on different criteria such as duplicate rows..
7. Find the sum of each column, or find the column with the lowest mean.
8. Locate the 3 largest values in a data frame.
9. Subtract the mean of a row from each element of the row in a Data Frame.
10. Replace all negative values in a data frame with a 0.
11. Replace all missing values in a data frame with a 999.
12. Importing and exporting data between pandas and CSV file
13. Importing and exporting data between pandas and MySQL database

7.2 Visualization

1. Given the school result data, analyse the performance of the students on different parameters, e.g
subject wise or class wise.
2. For the Data frames created above, analyze and plot appropriate charts with title and legend.
3. Take data of your interest from an open source (e.g. data.gov.in), aggregate and summarize it. Then
plot it using different plotting functions of the Matplotlib library.

7.3 Data Management

1. Create a student table with the student id, name, and marks as attributes where the student id is the primary key.
2. Insert the details of a new student in the above table.
3. Delete the details of a particular student in the above table.
4. Use the select command to get the details of the students with marks more than 80.
5. Create a new table (order ID, customer Name, and order Date) by joining two tables (order ID, customer ID, and order Date) and (customer ID, customer Name, contact Name, country).
6. Create a foreign key in one of the two tables mentioned above
7. Find the min, max, sum, and average of the marks in a student marks table.
8. Find the total number of customers from each country in the table (customer ID, customer Name, country) using group by.
9. Create a new table (name, date of birth) by joining two tables (student id, name) and (student id, date of birth).
10. Write a SQL query to order the (student ID, marks) table in descending order of the marks.

7.4 Introduction to Computer Networks

Reference:
NCERT Informatics Practices – Text book for class – XII