给出以下数据框:
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。
我假设一旦浮动转换为货币,它们将采用对象格式,但我希望有一种解决方法。
提前致谢!
答案 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 function 和 f-string 来实现更短的 更短的语法
df['C'] = df['C'].apply(lambda x: f"${x/1000:.1f}k")