Por que as informações não repetem no concat a cada interação do FOR ? Existe algum parâmetro dentro da função concat que ignora informações iguais ?
Por que as informações não repetem no concat a cada interação do FOR ? Existe algum parâmetro dentro da função concat que ignora informações iguais ?
Olá, Guilherme! Tudo bem com você?
Peço desculpa pela demora em responder o seu tópico.
A função concat
do Pandas não ignora informações iguais. O que acontece é que, a cada iteração do FOR, o concat
está adicionando ao DataFrame df
a contagem de valores (value_counts()
) de cada moeda (item
).
O value_counts()
retorna uma série contendo contagens de valores únicos, neste caso 'C' e 'c'. Portanto, a cada iteração, ele não está repetindo informações, mas sim adicionando novas contagens de 'C' e 'c' para a próxima moeda.
Vamos a um exemplo prático para ilustrar isso. Suponha que temos dois conjuntos de moedas:
m1 = 'CCcCCccCCCccCcCccCcCcCCCcCCcccCCcCcCcCcccCCcCcccCc'
m2 = 'CCCCCccCccCcCCCCccCccccCccCccCCcCccCcCcCCcCccCccCc'
E criamos um DataFrame para cada um:
df1 = pd.DataFrame({'m1': list(m1)})
df2 = pd.DataFrame({'m2': list(m2)})
Agora, se usarmos o value_counts()
em cada DataFrame, obteremos a contagem de 'C' e 'c' para cada moeda:
df1_counts = df1['m1'].value_counts()
df2_counts = df2['m2'].value_counts()
Se agora usarmos o concat
para juntar essas contagens em um único DataFrame, teremos:
df = pd.concat([df1_counts, df2_counts], axis=1)
Nesse DataFrame final, não temos repetição de informações, mas sim a contagem de 'C' e 'c' para cada moeda, adicionada a cada iteração do FOR.
Espero ter esclarecido a sua dúvida. Caso tenha mais alguma pergunta, estarei à disposição para ajudar.
Grande abraço e bons estudos!