Autour de chaque nombre dans un Python pandas trame de données par 2 décimales
Cela fonctionne p_table.apply(pd.Series.round)
cependant, il n'a pas de décimales
import pandas as pd
Series.round(decimals=0, out=None)
j'ai essayé ce p_table.apply(pd.Series.round(2))
mais obtiens cette erreur:
unbound method round() must be called with Series instance as first argument (got int instance instead)
Comment arrondir tous les éléments dans le bloc de données à deux décimales?
[MODIFIER] Compris.
import numpy as np
np.round(p_table, decimals=2)
Ce qui est pd? allez-vous définir pour moi, s'il vous plaît??
Vous pouvez poster une réponse à votre propre question et il faut l'accepter. Cela peut garder cette de traîner comme un zombie question.
Vous pouvez poster une réponse à votre propre question et il faut l'accepter. Cela peut garder cette de traîner comme un zombie question.
OriginalL'auteur Tristan Forward | 2014-08-12
Vous devez vous connecter pour publier un commentaire.
OriginalL'auteur Tristan Forward
Depuis
0.17.0
version que vous pouvez faire.round(n)
OriginalL'auteur piroot
que:
data.apply(lambda x: np.round(x, decimals=2))
--- timeit.minuterie pour 100x: 0.00356676544494est le même, mais plus lent, que:
np.round(data,decimals=2)
--- timeit.minuterie pour 100x: 0.000921095par exemple, les deux donne:
pour les données:
OriginalL'auteur
À tour la colonne C, vous pouvez utiliser ceci:
La sortie sera:
Je pense que cela signifie que les valeurs sont des flotteurs de sorte que vous pouvez convertir en int ou string en fonction de vos besoins pour le dataframe.
OriginalL'auteur Abhinav Vajpeyi