Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

355
Visualizações
¿Cómo verificar si una celda en particular en pandas DataFrame es nula?

Tengo el siguiente df en pandas.

 0 ABC 1 2 NaN 8

¿Cómo puedo comprobar si df.iloc[1]['B'] es NaN?

Intenté usar df.isnan() y obtengo una tabla como esta:

 0 ABC 1 false true false

pero no estoy seguro de cómo indexar la tabla y si esta es una forma eficiente de realizar el trabajo.

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Usepd.isnull , para seleccionar use loc o iloc :

 print (df) 0 ABC 0 1 2 NaN 8 print (df.loc[0, 'B']) nan a = pd.isnull(df.loc[0, 'B']) print (a) True print (df['B'].iloc[0]) nan a = pd.isnull(df['B'].iloc[0]) print (a) True
over 4 years ago · Santiago Trujillo Relatório

0

La respuesta de Jezrael es perfecta. Si solo le preocupa el valor de NaN, estaba explorando para ver si hay una opción más rápida, ya que en mi experiencia, sumar matrices planas es (extrañamente) más rápido que contar. Este código parece más rápido:

 df.isnull().values.any()

Por ejemplo:

 In [2]: df = pd.DataFrame(np.random.randn(1000,1000)) In [3]: df[df > 0.9] = pd.np.nan In [4]: %timeit df.isnull().any().any() 100 loops, best of 3: 14.7 ms per loop In [5]: %timeit df.isnull().values.sum() 100 loops, best of 3: 2.15 ms per loop In [6]: %timeit df.isnull().sum().sum() 100 loops, best of 3: 18 ms per loop In [7]: %timeit df.isnull().values.any() 1000 loops, best of 3: 948 µs per loop
over 4 years ago · Santiago Trujillo Relatório

0

Si está buscando los índices de NaN en una columna específica, puede usar

 list(df['B'].index[df['B'].apply(np.isnan)])

En caso de que desee obtener los índices de todos los valores NaN posibles en el marco de datos, puede hacer lo siguiente

 row_col_indexes = list(map(list, np.where(np.isnan(np.array(df))))) indexes = [] for i in zip(row_col_indexes[0], row_col_indexes[1]): indexes.append(list(i))

Y si está buscando una sola línea, puede usar:

 list(zip(*[x for x in list(map(list, np.where(np.isnan(np.array(df)))))]))
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda