Suppression de la notation scientifique chez les pandas?
J'ai un DataFrame dans les pandas, où les nombres sont exprimés en notation scientifique (ou exposant notation) comme ceci:
id value
id 1.00 -4.22e-01
value -0.42 1.00e+00
percent -0.72 1.00e-01
played 0.03 -4.35e-02
money -0.22 3.37e-01
other NaN NaN
sy -0.03 2.19e-04
sz -0.33 3.83e-01
Et la notation scientifique permet une comparaison facile, inutilement difficile. Je suppose que c'est la 21900 valeur de vissage pour les autres. Je veux dire 1.0 est codé. UN!
Cela ne fonctionne pas:
np.set_printoptions(supress=True)
Et pandas.set_printoptions
ne pas mettre en œuvre supprimer, et j'ai regardé tout à pd.describe_options()
dans le désespoir, et pd.core.format.set_eng_float_format()
ne semble pour l'allumer pour toutes les autres valeurs flottantes, avec aucune possibilité de le désactiver.
source d'informationauteur user1244215 | 2013-07-19
Vous devez vous connecter pour publier un commentaire.
Vos données est probablement
object
dtype. C'est un copier/coller direct de vos données.read_csv
l'interprète comme le bon dtype. Vous devriez normalement avoirobject
dtype sur la chaîne-comme des champs.vérifier si votre dtypes sont
object
Ce convertit ce cadre à
object
dtype (avis de l'impression est drôle maintenant)C'est comment faire pour le convertir en arrière (
astype(float)
) fonctionne également iciC'est ce qu'un
object
dtype cadre ressembleraitrapide temporaire:
df.round(4)
global:
pd.options.display.float_format = '{:20,.2f}'.format
Que la fonction décrire retourne un dataframe, ce que la fonction ci-dessus n'est, tout simplement, il les formats de chaque ligne au format standard.
J'ai écrit cette réponse parce que j'ai eu une bien que dans mon esprit, qui était
Ses inutiles pour obtenir le comte de 95 95.00000 e+01
Aussi dans notre format régulier, il est plus facile de comparer.
Avant d'appliquer la fonction ci-dessus nous avons été faire
Après l'application, nous obtenons
frapper si elle m'a aidé 🙂
La même Réponse est posté à Stackoverflow réponse ici
Si vous souhaitez utiliser les valeurs de formatage de chaîne de caractères dans une liste, dire dans le cadre de csvfile csv.writier, les chiffres peuvent être formaté avant de créer une liste: