Il motivo è comune a tutte le applicazioni LED, non solo a Raspberry Pi (o ai pin GPIO).
Un LED può solo passare così tanta corrente prima di distruggere se stesso (molto brillantemente!). La corrente massima varia in base alle dimensioni e al colore del LED, ma per un LED rosso di medie dimensioni si può in genere assumere 20 mA (controllare questo valore, se si ha il foglio delle specifiche per il LED a portata di mano - e piccoli LED possono gestire solo un minuscola frazione di questo).
Un LED rosso standard di solito ha una caduta di tensione di circa 1,7 V, quindi il valore del resistore può essere scelto per passare 20 mA a (tensione - 1,7). Supponendo un input di 5v, ciò significa una resistenza che passerà 20mA a 3.3v, che (usando la legge di Ohm) ci dà una resistenza minima assoluta di 165 ohm.
Il peggio che può accadere usando un resistore più grande, è che il LED sarà più debole della sua massima luminosità, e quindi per ospitare LED più piccoli che possono solo passare 10mA, non è raro usare 330 ohm e oltre.
Metterei un resistore da 470 ohm per un'alimentazione a 5 v per un LED rosso di medie dimensioni, e se il LED è troppo fioco lo ridurrei leggermente.
Se si utilizza un LED rosso in miniatura, 1K ohm non suona scandaloso e per colori più esotici (in particolare blu, rosa e bianco), si vorrà calcolare il valore da soli.