Saltar al contenido

redondear una sola columna en pandas

Este team de especialistas luego de algunos días de trabajo y recopilación de de información, encontramos la respuesta, queremos que resulte de utilidad para tu proyecto.

Solución:

Estás muy cerca. Aplicó la ronda a la serie de valores dada por df.value1. El tipo de devolución es, por lo tanto, una serie. Debe volver a asignar esa serie al marco de datos (u otro marco de datos con el mismo índice).

También, hay un pandas.Series.round método que es básicamente una forma abreviada de pandas.Series.apply(np.round).

In[2]: 
    df.value1 = df.value1.round()
    print df

Out[2]:
    item  value1  value2
    0    a       1     1.3
    1    a       2     2.5
    2    a       0     0.0
    3    b       3    -1.0
    4    b       5    -1.0

Por alguna razón, el método round() no funciona si tiene números flotantes con muchos lugares decimales, pero esto funcionará.

decimals = 2    
df['column'] = df['column'].apply(lambda x: round(x, decimals))

Usa el método pandas.DataFrame.round() así:

df = df.round('value1': 0)

Las columnas no incluidas se dejarán como están.

Si crees que ha resultado provechoso nuestro post, nos gustaría que lo compartas con el resto entusiastas de la programación de este modo contrubuyes a difundir nuestro contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *