Pandas DataFrame: Como Evitar o SettingWithCopyWarning usando df.assign()
Acabei de gravar um novo vídeo no qual compartilho uma abordagem para evitar o aviso "SettingWithCopyWarning" ao trabalhar com o Pandas. Além disso, vou mostrar como tornar o código mais legível utilizando o método df.assign(). No vídeo, utilizo o seguinte código como exemplo: import pandas as pd df = pd.read_csv("https://github.com/pandas-dev/pandas/raw/main/doc/data/titanic.csv") df2 = df[['Cabin', 'Fare']] df2.rename(columns={'Ca bin': "Cabin"}).assign( Cabin=lambda x: x.Cabin * 2, Fare=lambda x: (x.Fare * 2).astype(int), baba=1, ).assign( baba=lambda x: (x.baba + 10).astype('Float64') ) No código acima, começamos importando o Pandas e carregando um conjunto de dados do Titanic a partir de um arquivo CSV. Em seguida, selecionamos apenas as colunas 'Cabin' e 'Fare' para um novo DataFrame chamado df2. Para evitar o aviso "SettingWithCopyWarning", utilizo o método df2.rename() para renomear a coluna 'Ca bin' para 'Cabin'. Em seguida, utilizo o df.assign() para realizar as seguintes transformações: Multiplico os valores da coluna 'Cabin' por 2. Multiplico os valores da coluna 'Fare' por 2 e os converto para o tipo inteiro. Adiciono uma nova coluna chamada 'baba' e preencho com o valor 1. Atualizo a coluna 'baba', adicionando 10 a cada valor e convertendo-os para o tipo 'Float64'. Essa abordagem utilizando o df.assign() permite evitar o aviso de cópia com modificação no Pandas, além de tornar o código mais legível e fácil de entender. Assista ao vídeo completo para obter mais detalhes e exemplos práticos. Espero que seja útil e ajude você a trabalhar de forma mais eficiente com o Pandas! Não se esqueça de se inscrever no canal e deixar seus comentários e dúvidas. Obrigado por assistir e até a próxima! 📺🐼
Download
0 formatsNo download links available.