熊猫格式列为货币

时间:2016-01-26 16:44:35

标签: python-3.x pandas seaborn

给出以下数据框:

myfunc(&(mystruct_t){23, "myname"});

我想将价值转换为数千美元的美元,如下所示:

import pandas as pd
df = pd.DataFrame(
        {'A':['A','B','C','D'],
         'C':[12355.00,12555.67,640.00,7000]
        })
df

    A   C
0   A   12355.00
1   B   12555.67
2   C   640.00
3   D   7000.00

我需要做的第二件事是以某种方式将它们变成Seaborn热图,它只接受浮点数和整数。有关热图方面的更多信息,请参阅here

我假设一旦浮动转换为货币,它们将采用对象格式,但我希望有一种解决方法。

提前致谢!

3 个答案:

答案 0 :(得分:1)

    def formay(x):
        return "${:.1f}k".format((x/1000))
    df = pd.DataFrame(
        {'A':['A','B','C','D'],
         'C':[12355.00,12555.67,640.00,7000]
        })

    df['C']=df['C'].apply(formay)

    print(df)

答案 1 :(得分:1)

df['C'] = df['C'].apply(lambda x: "${:.1f}k".format((x/1000)))

答案 2 :(得分:0)

或者您可以使用 lambda functionf-string 来实现更短的 更短的语法

df['C'] = df['C'].apply(lambda x: f"${x/1000:.1f}k")