Simple random sampling is the baseline that every other sampling method is compared with.
It works because chance, not a person, decides who is included, so no group is favoured on purpose or by habit.
Its maths is the simplest, and most standard formulas for uncertainty assume it.
The first step is the sampling frame: a list of every member of the population.
Each member gets a number, and a random number generator picks the required count without repeats.
In pandas, the sample method draws random rows from a DataFrame, and a fixed random seed makes the draw repeatable.
Sampling without replacement means each member can be picked at most once, which is the usual choice.
The frame is often the weak point: a customer list missing new sign-ups leaves them out of every sample.
Non-response is another, because people who are picked but never reply turn a random sample into a self-selected one.
A simple random sample can still be unlucky, such as drawing few customers from a small region by chance.
That luck evens out across many samples but can matter a great deal for any single one.
Random does not mean haphazard: picking whoever happens to be nearby feels random but is not.
In practice, saving the seed and the frame used lets anyone repeat the exact draw.
Random samples also make huge tables quick to explore before running the full analysis.
The usual mistake is treating a convenient sample, such as the first rows of a file, as if it were random.