clientes tiene 3 filas. Después de pd.merge(clientes, pedidos, on="id", how="left"), el resultado tiene 4 filas, no 3.
A
tabla
1
clientes (3 filas)
2
pedidos (varios por cliente)
PISTARecuerda: un JOIN (o merge) crea una fila por cada COINCIDENCIA, no una por cada fila de la tabla izquierda.
¿Qué pasó?