We start with a DataFrame containing some duplicate rows. When we call drop_duplicates(), it checks each row in order. If a row is the first time it appears, it keeps it. If it finds a row that matches a previous one, it marks it as duplicate and removes it. The function returns a new DataFrame without those duplicates. The original DataFrame remains unchanged. This process helps clean data by removing repeated rows while keeping the first instance. You can also change which duplicates to keep by parameters, but by default, it keeps the first. This is shown step-by-step in the execution table where row index 2 is removed because it duplicates row index 1.