arguments pandas to_csv float_format et décimal ne fonctionnent pas pour la colonne d'index

Fond

Je suis en train de faire quelques simulations resp. un système d'analyse par variing paramètres (dans ce cas rpm seulement) et l'ajouter à la dernière ligne de résultats dataframe results_df à résumant dataframe df contenant donnant la baviour de mon système en depencence de la variété des rpm.

Afin d'obtenir un indice approprié pour le traçage et l'analyse des données j'ai converti les diverses valeurs (ici rpm) à partir de la liste dans un pandas série ser et concat cette série avec le résumant dataframe df contenant les résultats qui m'intéressent.

Depuis les résultats de chaque calcul, je suis intéressé en est seulement la dernière ligne de chaque calcul, je suis l'extraction de ces données à partir des résultats dataframe results_df en utilisant .tail(1).

Ce que j'ai fait jusqu'à présent est illustré dans l'extrait suivant:

rpm = [0.25, 0.3, 0.5, 0.75, 1.0, 1.5, 2.0]

ser = pd.Series(rpm, name='rpm')
df = pd.DataFrame()
df_list = list()

for i, val in enumerate(rpm):
    results_df = get_some_data_from_somwhere()
    df_list.append(results_df.tail(1))

df = df.append(df_list, ignore_index=True)
df = pd.concat([df, ser], axis=1)
df.set_index('rpm', inplace=True)


with open('foo.csv', 'w') as f:
    data.to_csv(f, index=True, header=True, decimal=',', sep=' ', float_format='%.3f')

Problème

Ce fichier csv ce que je reçois a l'follwing format:

rpm cooling_inner heating_inner cooling_outlet heating_outlet
0.25 303,317 323,372 302,384 324,332

Cependant, je m'attendais à avoir trois chiffres après la virgule et une virgule comme séparateur décimal signe sur mon index de la colonne, comme illustré ici:

rpm cooling_inner heating_inner cooling_outlet heating_outlet
0,250 303,317 323,372 302,384 324,332

Il semble donc que la index et decimal signe options ne sont pas appliquées à l'indice de la colonne lors de l'exportation dataframes de csv fichiers à l'aide de la .to_csv commande.

Comment pourrais-je atteindre ce comportement depuis le index option est définie True et toutes les valeurs (à l'exception de l'indice de colonne) d'avoir le bon format et signe décimal?

Dois-je traiter la colonne d'index, d'une certaine manière séparée?

source d'informationauteur albert