12 questions. Score 70% or more to pass this rank's quiz.
Selecting one column after groupby gives a Series; add .reset_index() to turn it back into a DataFrame.
df.loc[5, 'region'] uses the index label 5 and column name; df.iloc[5, 2] uses the 6th row and 3rd column.
keep='first' is the default; use keep='last' or keep=False to change that.
range(10) is 0–9, and the multiples of 3 are 0, 3, 6, 9, so there are 4.
isna() returns True/False per cell, and summing treats True as 1, giving a missing-value count per column.
Strip the symbol first (e.g. .str.replace('$', '', regex=False)) or use pd.to_numeric(..., errors='coerce') to turn bad values into NaN.
how='left' keeps all rows of the left DataFrame (orders), just like a SQL LEFT JOIN; unmatched columns become NaN.
The target is a category (yes/no), so it is classification; predicting a number like next month's sales would be regression.
The model memorized the training set instead of learning general patterns; simplify it, regularize, or get more data.
Evaluating on held-out data gives an honest estimate of real-world performance.
RAG grounds answers in your own data (e.g. company docs) without retraining, which reduces made-up answers.
AI tools can produce plausible but wrong queries or numbers, so the analyst stays responsible for validating results.