"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Por que o `cenarwithcopywarning 'ocorre ao modificar os quadros de dados derivados de subconjuntos?

Por que o `cenarwithcopywarning 'ocorre ao modificar os quadros de dados derivados de subconjuntos?

Postado em 2025-02-21
Navegar:616

Why Does `SettingWithCopyWarning` Occur When Modifying DataFrames Derived from Subsets?

localizando o culpado de cenáriowithcopywarning

ao tentar modificar um dataframe usando .loc [row_indexer, col_indexer] = value, o "Settingwithwithwithwarning". persiste. Esta questão decorre de acessar uma fatia de dados de outro quadro de dados sem invocar o método .copy ().

importar pandas como PD d = {'col1': [1, 2, 3, 4], 'col2': [3, 4, 5, 6]} df = pd.dataframe (dados = d) df ['new_column'] = nenhum df.loc [0, 'new_column'] = 100 inicialmente, não há avisos. No entanto, criando um novo DataFrame com base em um subconjunto de df:

new_df = df.loc [df.col1> 2]

import pandas as pd

d = {'col1': [1, 2, 3, 4], 'col2': [3, 4, 5, 6]}
df = pd.DataFrame(data=d)

df['new_column'] = None
df.loc[0, 'new_column'] = 100

new_df.loc [2, 'new_column'] = 100

new_df = df.loc[df.col1 > 2]

new_df_copy = df.loc [df.col1> 2] .copy () new_df_copy.loc [2, 'new_column'] = 100

new_df.loc[2, 'new_column'] = 100
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3