O truque padrão para esse tipo de problema no Awk é usar um array de contador associativo:
awk '{ print $0 "\t" ++count[$1] }'
Isso conta o número de vezes que a primeira palavra de cada linha foi vista. Não é bem o que você está pedindo, já que
Apple_1 1 300
Apple_2 1 500
Apple_1 500 1500
produziria
Apple_1 1 300 1
Apple_2 1 500 1
Apple_1 500 1500 2
(a contagem de Apple_1
não é redefinida quando vemos Apple_2
), mas se a entrada for classificada, você estará OK.
Caso contrário, você precisaria acompanhar um contador e uma última chave:
awk '{ if (word == $1) { counter++ } else { counter = 1; word = $1 }; print $0 "\t" counter }'