| 1 | ○ | Import pandas | Easy |
| 2 | ○ | pandas Version | Easy |
| 3 | ○ | Create a DataFrame | Easy |
| 4 | ○ | Summary of a DataFrame | Easy |
| 5 | ○ | First 3 Rows | Easy |
| 6 | ○ | Select Two Columns | Easy |
| 7 | ○ | Select Rows and Columns | Easy |
| 8 | ○ | Rows with Visits > 3 | Easy |
| 9 | ○ | Rows with Missing Age | Easy |
| 10 | ○ | Cats Younger Than 3 | Easy |
| 11 | ○ | Age Between 2 and 4 | Easy |
| 12 | ○ | Change a Single Value | Easy |
| 13 | ○ | Total Visits | Easy |
| 14 | ○ | Mean Age per Animal | Easy |
| 15 | ○ | Append then Delete a Row | Easy |
| 16 | ○ | Count Each Animal | Easy |
| 17 | ○ | Sort by Two Columns | Easy |
| 18 | ○ | Map yes/no to Boolean | Easy |
| 19 | ○ | Replace a Value | Easy |
| 20 | ○ | Pivot Table of Mean Age | Medium |
| 21 | ○ | Drop Consecutive Duplicates | Medium |
| 22 | ○ | Subtract the Row Mean | Medium |
| 23 | ○ | Column with Smallest Sum | Medium |
| 24 | ○ | Count Fully-Unique Rows | Medium |
| 25 | ○ | Column of the Third NaN | Hard |
| 26 | ○ | Sum of Three Greatest per Group | Hard |
| 27 | ○ | Sum over Integer Bins | Hard |
| 28 | ○ | Distance to Previous Zero | Hard |
| 29 | ○ | Locations of 3 Largest Values | Hard |
| 30 | ○ | Patch Negatives with Group Mean | Hard |
| 31 | ○ | Grouped Rolling Mean (ignore NaN) | Hard |
| 32 | ○ | Business-Day Series of 2015 | Easy |
| 33 | ○ | Sum on Wednesdays | Medium |
| 34 | ○ | Mean per Calendar Month | Medium |
| 35 | ○ | Peak Date per 4 Months | Hard |
| 36 | ○ | Third Thursdays | Medium |
| 37 | ○ | Fill Missing Flight Numbers | Medium |
| 38 | ○ | Split From_To Column | Medium |
| 39 | ○ | Standardise City Capitalisation | Medium |
| 40 | ○ | Replace Column with Split Columns | Medium |
| 41 | ○ | Extract Airline Name | Medium |
| 42 | ○ | Expand List Column | Medium |
| 43 | ○ | Build a MultiIndex Series | Medium |
| 44 | ○ | Is the Index Sorted? | Medium |
| 45 | ○ | Select from Second Level | Medium |
| 46 | ○ | Slice a MultiIndex | Medium |
| 47 | ○ | Sum per First Level | Medium |
| 48 | ○ | Sum per Second Level via unstack | Medium |
| 49 | ○ | Swap and Sort Index Levels | Medium |
| 50 | ○ | Minesweeper: Grid Coordinates | Medium |
| 51 | ○ | Minesweeper: Place Mines | Medium |
| 52 | ○ | Minesweeper: Adjacent Counts | Hard |
| 53 | ○ | Minesweeper: NaN on Mines | Medium |
| 54 | ○ | Minesweeper: Reshape to Grid | Hard |
| 55 | ○ | Hourly OHLC Aggregation | Medium |
| 56 | ○ | Filter Rows by Membership | Easy |
| 57 | ○ | Reindex Rows and Columns | Medium |
| 58 | ○ | Flag Duplicate Rows by Subset | Medium |
| 59 | ○ | Cross-Section from a MultiIndex | Medium |
| 60 | ○ | Tuple-Index a MultiIndex with .loc | Medium |
| 61 | ○ | Extract One Group | Easy |
| 62 | ○ | Named Aggregations per Group | Medium |
| 63 | ○ | Filter Groups by an Aggregate Condition | Medium |
| 64 | ○ | Within-Group Z-Score | Hard |
| 65 | ○ | Roll to the Nearest Business Day | Medium |
| 66 | ○ | Mean Value in Leap-Year Februaries | Medium |
| 67 | ○ | Resample to a New Frequency with Forward Fill | Medium |
| 68 | ○ | Find the Longest String | Easy |
| 69 | ○ | Concatenate Two String Columns | Easy |
| 70 | ○ | Extract the Last Two Characters | Easy |
| 71 | ○ | Filter Rows Matching a Regex | Medium |
| 72 | ○ | One-Hot Encode a Multi-Value Column | Medium |
| 73 | ○ | Safe Lookup with a Default | Easy |
| 74 | ○ | Add a Prefix to Index Labels | Easy |
| 75 | ○ | Interquartile Range | Easy |
| 76 | ○ | Count Unique Values, Counting NaN | Easy |
| 77 | ○ | Add Two Series with a Fill Value | Medium |
| 78 | ○ | Cast Specific Columns | Easy |
| 79 | ○ | Rename Columns and Index Together | Easy |
| 80 | ○ | Drop Sparse Rows with a Threshold | Medium |
| 81 | ○ | Stack Two DataFrames | Easy |
| 82 | ○ | Concatenate with Hierarchical Keys | Medium |
| 83 | ○ | Concatenate Column-Wise with an Outer Join | Medium |
| 84 | ○ | Inner Merge on a Shared Key | Easy |
| 85 | ○ | Left Merge with Differently-Named Keys | Medium |
| 86 | ○ | Distinct Neighbourhoods | Easy |
| 87 | ○ | Tracks in the Top Ten | Easy |
| 88 | ○ | Cheapest Listing in Each City | Easy |
| 89 | ○ | Salary Against the Department Average | Medium |
| 90 | ○ | City Offering the Most Amenities | Medium |
| 91 | ○ | Average Order Value by Weekday and Hour | Medium |
| 92 | ○ | Month-Over-Month User Growth per Account | Hard |
| 93 | ○ | Score Spread Among Grade-A Inspections | Easy |
| 94 | ○ | Correlation Between Emails and Sessions | Hard |
| 95 | ○ | Longest Winning Streak | Hard |
| 96 | ○ | Job Titles on the Top Salary | Easy |
| 97 | ○ | Rank Senders by Volume | Medium |
| 98 | ○ | Completed Tasks for One Company | Medium |
| 99 | ○ | Distinct Streets per Postal Code | Medium |
| 100 | ○ | Active Three Days Running | Hard |
| 101 | ○ | Dense-Rank Hosts by Total Beds | Medium |
| 102 | ○ | Budget per Assigned Employee | Medium |
| 103 | ○ | Three-Month Rolling Revenue | Hard |
| 104 | ○ | Month-Over-Month Revenue Change | Medium |
| 105 | ○ | One Current Row per Employee | Easy |
| 106 | ○ | Housing Units Completed per Year | Easy |
| 107 | ○ | Rank Guests Oldest First | Easy |
| 108 | ○ | Customers Who Never Ordered | Medium |
| 109 | ○ | Total Order Cost per Customer | Easy |
| 110 | ○ | Users in the Top Distance Ranks | Medium |
| 111 | ○ | Share of Viewed Posts That Are Spam | Medium |
| 112 | ○ | Cities Above the National Average | Medium |
| 113 | ○ | Best Rating per Search | Medium |
| 114 | ○ | Peak Headcount During Each Tenure | Hard |
| 115 | ○ | Missing Email or Under Eighteen | Easy |
| 116 | ○ | Five Highest Salaries, Ties Included | Easy |
| 117 | ○ | Top Three Products in Each Category | Medium |
| 118 | ○ | Second-Highest Distinct Salary per Department | Medium |
| 119 | ○ | Sort by a Custom Priority Order | Medium |
| 120 | ○ | Bucket Salaries into Bands | Easy |
| 121 | ○ | Outliers by the 1.5 IQR Rule | Medium |
| 122 | ○ | Rows Where a Product's Price Changed | Medium |
| 123 | ○ | Distinct Customers per Month | Medium |
| 124 | ○ | Each Product's Share of Its Category | Medium |
| 125 | ○ | Quantity-Weighted Average Price | Medium |
| 126 | ○ | Order Counts Including Customers With None | Easy |
| 127 | ○ | Most Frequently Ordered Product | Medium |
| 128 | ○ | Best-Selling Product in Each Category | Medium |
| 129 | ○ | Running Total per Store | Medium |
| 130 | ○ | Number Each Customer's Orders | Medium |
| 131 | ○ | First Purchase, Last Purchase, Days Between | Medium |
| 132 | ○ | Customers With at Least One Order | Medium |
| 133 | ○ | Reconcile Two Systems | Medium |
| 134 | ○ | Join Three Tables | Medium |
| 135 | ○ | Expand a Many-to-Many Relationship | Medium |
| 136 | ○ | Convert Sales Using a Dated Rate Table | Medium |
| 137 | ○ | Attach the Last Known Price to Each Trade | Hard |
| 138 | ○ | Ids Appearing More Than Once | Medium |
| 139 | ○ | Combine Two Months of Transactions | Easy |
| 140 | ○ | Stack Frames With Different Columns | Medium |
| 141 | ○ | Missing-Value Report | Easy |
| 142 | ○ | Fill Missing Salary With the Department Median | Medium |
| 143 | ○ | Carry Balances Forward Within a Customer | Medium |
| 144 | ○ | First Available Phone Number | Easy |
| 145 | ○ | Find Duplicate Transactions | Medium |
| 146 | ○ | Wide to Long | Easy |
| 147 | ○ | Long to Wide | Medium |
| 148 | ○ | Cross-Tabulate Two Columns | Easy |
| 149 | ○ | Cross-Tabulation as Row Percentages | Medium |
| 150 | ○ | Five Most Common Tags | Easy |
| 151 | ○ | Count Email Domains | Easy |
| 152 | ○ | Tidy Up Names | Easy |
| 153 | ○ | Hashtag Frequencies | Medium |
| 154 | ○ | Most Common Words | Medium |
| 155 | ○ | Strip Phone Numbers to Digits | Medium |
| 156 | ○ | Split a Timestamp into Features | Easy |
| 157 | ○ | Seven-Day Trailing Average per Store | Medium |
| 158 | ○ | Change From the Previous Order | Medium |
| 159 | ○ | Split Events into Sessions | Hard |
| 160 | ○ | Monthly Cohort Retention | Hard |