Python — Преобразование денежных значений в столбце фрейма данных

#python #pandas #dataframe

Вопрос:

у меня есть набор данных, содержащий столбец цен каждого футболиста, и я хотел бы преобразовать значения с » K » в «M», чтобы я мог их отсортировать. имя столбца : Набор данных значений : пример фифа :

          Values :
          €21M
          €2K
          €3.2M
          €18.3K
 

Я бы хотел, чтобы это было :

           Values :
          €21M
          €0.002M
          €0.0032M
          €0.0183M
 

Комментарии:

1. удалите последний символ для каждого значения и, если оно равно «K», разделите его на 1000.

Ответ №1:

Если у вас есть этот фрейм данных:

    Values
0    €21M
1     €2K
2   €3.2M
3  €18.3K
 

Затем:

 df["Values"] = df["Values"].str.replace(
    r"([d.] )K", lambda g: str(float(g.group(1)) / 1000)   "M", regex=True
)
print(df)
 

С принтами:

      Values
0      €21M
1   €0.002M
2     €3.2M
3  €0.0183M