
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
Master NumPy, the foundation of numerical computing in Python, and learn how its nd array, broadcasting, and vectorization power data computation with Pandas, SciPy, TensorFlow, and PyTorch.
Create NumPy arrays from Python lists to enable fast numerical operations, and generate zeros, ones, custom values, arange or linspace sequences, identity or diagonal matrices, and random arrays for simulations.
Explore how NumPy arrays are built and behave by examining ndim, shape, size and item size, and learn to convert dtypes, reshape, flatten, and transpose with T or transpose.
Master indexing and slicing in NumPy to access, modify, and filter one-dimensional and two-dimensional arrays, using step slicing, fancy indexing, and boolean indexing for efficient data analysis.
Explore numpy's array operations with element-wise arithmetic, comparison and logical operations, and broadcasting, then apply vectorization and universal functions to rounding and modular calculations.
Explore NumPy's statistical and mathematical functions, including aggregate operations and axis-based operations. Apply cumulative calculations and element-wise functions like sine, cosine, exponential, square root, and log.
Master advanced array manipulation in NumPy by stacking, splitting, inserting, and deleting arrays, and understand the difference between copies and views for memory sharing and safe data handling.
Master NumPy filtering and conditional logic with np.where to select, replace, and clean data; combine conditions using and, or, not to cap outliers and prepare datasets.
Master sorting and searching in NumPy with functions like np.sort, np.argsort, and np.where. Identify max and min positions, count frequencies with np.unique and np.binCount, and apply these techniques to datasets.
Master Pandas series, a one-dimensional labeled array, creating it from lists, NumPy arrays, or dictionaries, applying indexing, vectorized operations, and missing-data handling with isNull, fillNA, dropNA, and describe.
Explore pandas data frame, a two-dimensional labeled data structure. Create frames from dictionaries, numpy arrays, or lists of dictionaries, and perform selection and filtering while inspecting shape, columns, index, dtypes.
Inspect data in pandas using head, tail, info, and describe to quickly understand a dataset’s structure, shape, data types, and quality.
Explore pandas dataframes by mastering indexes, columns, and data types, then inspect, modify, and convert data with practical examples for real-world datasets.
Master pandas with loc and iloc to access data by labels or positions, filter with conditions, and update values in data frames.
Learn how to add, rename, and delete columns in a DataFrame with pandas, including direct assignment, calculated and conditional columns, and using drop, del, and inplace for permanent changes.
Learn to compute basic statistics in pandas, including mean, median, min, max, standard deviation, and correlation, using describe and ag for custom aggregations on a sample employee data frame.
Explore advanced indexing and filtering in pandas with the log indexer, enabling label-based selection, ranges, and conditional updates on a product sales dataset.
Master position-based data access with pandas iloc, using integer positions, slicing, and negative indexing for precise retrieval and updates. Contrast iloc with loc to reveal position-based versus label-based indexing.
Master conditional filtering in pandas to extract rows by single or multiple criteria, filter numeric and text columns, and build reusable boolean masks for clean, readable code.
Master the pandas query method to filter data with sql-like expressions, using variables, and, or, not, and in or not in for concise, readable, dynamic filtering.
Discover pandas membership filtering with the dot isIn() method to filter rows by multiple values, exclude with not, and apply dynamic, multi-column conditions.
Explore dot-between for range filtering in Pandas, control inclusivity with the inclusive parameter on numeric and date ranges, and combine with other conditions for conditional updates.
Learn to detect and handle duplicates in a pandas dataframe using .duplicated, with subset and keep options, count with .duplicated.sum, and remove duplicates with .drop_duplicates, including conditional and groupby analyses.
Explore conditional assignment in pandas with dot where and dot mask, and compare to NumPy's np.where, to replace, update, and create columns using multiple conditions.
Learn how to create and apply boolean masks in pandas to filter, update, and transform data, combine conditions with logical operators, reuse masks, and apply vectorized updates.
Master pandas method chaining for filtering, transforming, sorting, and selecting data in a single, readable statement. Use assign and query to add columns and build production-ready workflows.
Master safe pandas filtering by avoiding common mistakes, using lock for updates, wrapping conditions in parentheses, choosing lock vs iloc, and applying copy, query, and assign for reliable data manipulation.
Detect missing data in pandas using isna and notna. Identify incomplete rows and columns and assess the percentage of missing values to guide preprocessing.
Learn to clean incomplete data with Pandas by using dropNA to drop rows or columns, adjust drops with axis, how, thresh, and subset, and compare shapes.
Master filling missing data with pandas fillna, replacing with constants, means, or computed statistics. Use forward fill and backward fill for sequential data, and apply column-specific filling via a dictionary.
Explore interpolation techniques to estimate missing values in time series using linear, polynomial, and time-based methods, and control filling with the limit parameter while preserving trends.
Discover how to filter pandas data with dot isIn, using lists or series for multi-value membership, excluding with not, and combining with other conditions across columns for advanced data selection.
Master text cleaning with the pandas str accessor, standardizing casing, trimming spaces, removing unwanted symbols, splitting and combining columns, and safely handling missing values through method chaining.
Detect and manage numeric and categorical outliers using IQR and z-score, visualize with box plots and histograms, and apply capping or removal with NaN handling for invalid cities.
Learn normalization and standardization in data pre-processing, applying min-max scaling and z-score standardization to numeric features like age and salary, and normalize categorical labels for clean analysis.
Master boolean masking in pandas to filter, update, and transform data without loops. Combine masks with and, or, not, and reuse them for clean, readable, scalable workflows.
Group data by region using groupby to perform sum, mean, and count aggregations, explore reshaping and internal group structures, and access individual groups for targeted regional analysis.
Master grouping and aggregation in pandas using agg, apply, and describe for clear summaries. Create named aggregations, custom functions, and full statistical snapshots across regions or salespeople.
Apply multiple aggregations with dictionary-style syntax and named aggregations in Pandas to produce clean, flat summaries, then sort results to reveal top regions and insights.
Group by multiple columns to create a multi-index, then reset and sort the results while applying multiple aggregations with a dictionary to reveal region-year performance trends.
Explore how aggregate, transform, and apply power Pandas grouped analysis, learning when to produce one-row summaries, preserve data shape, or apply custom per-group logic for insights.
Explore rolling, expanding, and exponentially weighted moving average windows in pandas to analyze time series and smooth data, revealing long-term trends.
Learn to create pivot tables in pandas to summarize revenue by region and year. Use index and columns to shape data and agfunc to compute sum and mean.
Explore multilevel pivot tables in pandas, grouping by region and product with year as columns to summarize revenue and units sold using sum and mean, with multi-index columns and totals.
Learn to reshape data with pandas by melting wide to long formats and pivoting back, enabling tidy, analyzable data for plotting sales and profit across regions and years.
Learn how stacking and unstacking transform multi-index data frames in pandas. Explore level control and fillValue to reshape wide to long and back.
Explore cross-tabulations in pandas to summarize categorical data with counts, margins, and percentage breakdowns. Extend by aggregating revenue with values and agfunc, and visualize results with seaborn heatmaps.
Combine datasets in pandas using concat, merge, and join to connect tables like customers and orders, with inner, left, right, and outer joins.
Master vertical concatenation with Pandas using concat to stack dataframes, reset or preserve the index, apply keys for hierarchical labels, and rely on name-based column alignment with NaN for gaps.
Master horizontal concatenation of data frames with pandas using concat along axis 1 to join columns and align indices. Use keys to distinguish columns and handle NaN for missing data.
Explore how to handle mismatched columns when concatenating data frames in pandas, using outer and inner joins, filling missing values with fillna, and standardizing data for reliable analysis.
Master how pandas merge combines two data frames using a common key, applies an inner join by default, and handles differing column names with on, left_on, and right_on.
Explore pandas joins: inner, left, right, and outer, using merge to combine data on a shared key, preserving or enriching datasets with missing values.
Learn to merge data frames in pandas based on their index, including single-index and multi-index scenarios, with time series alignment using leftIndex and rightIndex.
Master the pandas join method to align data frames by index, use onEquals for column joins, handle NaN, and resolve duplicate columns with lSuffix and rSuffix.
Combine multiple data frames in pandas using concat and chained merges to create unified datasets for sales analysis, linking customer details, sales transactions, and region mappings for dashboards and analytics.
Detect duplicate keys and overlapping column names when merging pandas data frames, then fix by dropping duplicates or aggregating, and use suffixes to clarify overlapping columns.
Explore time series analysis in pandas, learning how to convert timestamps to a date-time index with pd.to_datetime and perform time-based slicing, resampling, and rolling calculations.
Master date and time handling with Python's DateTime and Pandas Timestamp to create, compare, and manipulate timestamps, extract components, and compute time deltas for event-log analysis.
Explore time-based index types in pandas — DateTimeIndex, PeriodIndex, and TimeDeltaIndex — to enable time-aware slicing, resampling, and interval calculations in time series data.
Convert string date columns to pandas date-time objects using toDateTime, handle mixed formats with format and InferDateTimeFormat, and coerce invalid dates for clean time-series analysis.
Transform your data into a time-aware pandas frame by converting dates to date-time, setting a date-time index, and sorting for accurate time-based slicing, resampling, and rolling calculations.
Master time-based selection and slicing in pandas with a datetime index, including date ranges, partial string indexing, .loc slicing, weekday or month filters, and last 7 days windows.
Master time deltas in pandas for date arithmetic and duration analysis, add or subtract dates, and examine delivery times, run times, and time-based logs in time series data.
Explore resampling and frequency conversion in Pandas to downsample daily data into weekly or monthly summaries, upsample to higher frequencies with ffill, and generate weekly ohlc from daily stock prices.
Learn time series analysis with shifting, lagging, and leading to create lag features, compute diffs and percentage changes, and forecast trends from past data.
Discover how vectorized operations in pandas replace loops by applying calculations to entire columns, delivering faster, cleaner data analysis with numpy under the hood.
Learn how broadcasting in NumPy and Pandas automatically expands smaller arrays to match larger ones, enabling scalar, column-wise, and row-wise vectorized operations on arrays, series, and data frames.
See how pandas aligns data by index labels during arithmetic on series and dataframes, matching by rows and columns and handling missing values with NAN via fill values.
Explore how Pandas map, apply, and applyMap transform data from series to custom row or column operations on data frames, using practical examples like salary rules and feature engineering.
Learn to replace slow Python loops with NumPy vectorization for large datasets, using np.where and np.select to label data quickly and with high performance.
Learn to perform complex column transformations in pandas using vectorized arithmetic, np.where, and the assign method to create derived columns like total amount, discount, and final amount without loops.
Build a clean numeric processing pipeline in pandas with method chaining to compute total, discount, and net amount, then group by region for a region-wise summary.
Explore data visualization in pandas to reveal trends and relationships using built-in line, bar, and scatter plots powered by matplotlib.
Discover line and bar charts with pandas and matplotlib to visualize trends over time and compare categories, then plot multiple columns and customize styles.
Explore scatter plots to visualize relationships between two numeric variables and identify trends and correlations. Use color and size to encode a third variable for richer insights in pandas.
Explore how histograms and density plots reveal data distribution, shape, and variation, then learn to overlay a KDE on a histogram and customize visuals in pandas.
Enhance pandas charts by adding titles, axis labels, legends, and colors, then adjust line styles, grid, and figure size to improve readability and interpretation.
Master subplots and layout control to compare multiple metrics in a single figure, using pandas subplots and Matplotlib, with titles, axes, and tight layout for clean dashboards.
Master visualization techniques by combining Pandas with Matplotlib to create annotated line charts, moving averages, and styled plots, including scatter plots and heatmaps, for clear data storytelling and export-ready visuals.
Learn to compute day-to-day stock price changes from a daily prices data frame using close values, previous-day shifts, and diff or percent change to compare performance.
Learn to compute percentage changes from close prices to compare instruments and visualize returns. Use pandas built-in pct_change method for simple returns instead of manual division and multiplication.
Analyze tvpi or multiples by calculating final value over initial investment with Python, using total distributions and total paid-in capital to interpret performance.
Learn how CAGR, the compounded annual growth rate, accounts for time value of money by measuring an investment's average annual growth with reinvested profits.
Explore compound returns and geometric mean returns from daily prices using pandas, multiplying (1+daily returns) and subtracting 1, and computing the geometric mean as the product raised to 1/n.
Compare risk versus reward in stock investments by measuring arithmetic returns and their mean, then assess volatility using variance or standard deviation to define risk.
Compare simple and compound interest by calculating future value from the principal, rate, and time, and show how quarterly, monthly, and daily compounding affect the effective rate.
Explore continuous compounding as the limit of frequent interest reinvestment, using e^{rt} to calculate future value and the effective rate approaching 10.52%.
Explore log returns and continuous compounding in stock prices, showing how to compute them with numpy log and pandas using close prices and shift, and compare to simple returns.
Explore why log returns are popular, highlighting their additive property, normal distribution assumptions, volatility modeling, risk management, and portfolio optimization, and how they enable accurate CAGR calculations.
This course is a complete, practical guide to mastering data analysis using NumPy and Pandas, the two most widely used Python libraries in analytics, data science, finance, and machine learning. Designed for beginners and professionals alike, this course takes you from the foundations of data manipulation to advanced analytical techniques used in real-world projects.
You’ll begin by building a solid understanding of NumPy arrays and vectorized operations—the performance engine behind Pandas. Then, you’ll move step by step into Pandas, learning how to create, explore, filter, clean, and transform DataFrames like a true data professional. You’ll unlock methods to handle messy datasets, group and aggregate data for insights, and merge multiple data sources just like SQL joins.
The course also includes a dedicated module on time series analysis, equipping you with practical skills for analyzing stock trends, sales performance over time, and time-based logs. You’ll explore rolling windows, resampling, and date handling—essential tools for business analytics. Finally, you’ll learn to visualize data using Pandas and Matplotlib, creating professional charts that communicate insights clearly.
By the end of this course, you'll be able to confidently work with real datasets and build powerful data analysis workflows in Pandas and Numpy like an industry expert.