gpt4 book ai didi

python - Pandas:映射数据系列(浮点到字符串)而不删除尾随零

转载 作者:太空宇宙 更新时间:2023-11-03 11:26:15 26 4
gpt4 key购买 nike

我正在尝试创建一个包含以下形式的字符串的数据系列:

“%.2f +/- %.2f”

使用两个 pandas 数据系列(测量值及其误差)。以下是我的实现方式:

df["F"] = df["Fint"].map(str) + " +/- " + df["Fint Err"].map(str)

但是,map(str) 会从系列中的值中删除尾随零。

例如源“VLA 3 at 6lambda”。

In[101]: df["Fint"]
Out[101]:
Source Lambda Fint
VLA 2 6.0 0.15
3.6 0.19
VLA 3 6.0 0.40
3.6 0.29
In[102]: df["Fint"].map(str)
Out[102]:
Source Lambda
VLA 2 6.0 0.15
3.6 0.19
VLA 3 6.0 0.4

如何阻止删除尾随零?

很明显,如您所见,我实际上是在使用数据框(但由于 map 是一个数据系列函数,我认为这会简化问题),如果有一种方法可以使用 applymap 来实现这一点,我会很高兴知道。

谢谢!

最佳答案

如果数据以 float 开始,则它没有“尾随零”。但是从你的例子来看,听起来你真正想要的是让所有数字至少有 4 位数字,如果需要的话添加尾随零。试试这个:

# function that maps float->str, then pads with "0" up to length 4
to_4digit_str = lambda flt: str(flt).ljust(4,"0")


df["F"] = df["Fint"].map(str) + " +/- " + df["Fint Err"].map(to_4digit_str)

关于python - Pandas:映射数据系列(浮点到字符串)而不删除尾随零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33046966/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com