繁体   English   中英

ValueError:类型为“str”的 object 的未知格式代码“f”

[英]ValueError: Unknown format code 'f' for object of type 'str'

有人可以帮我解决我在标题中得到的错误代码。

我已经尝试按照我在网上阅读的内容中提到的添加浮动,但这也不起作用。

`df['Conv. Rates']=df['Conv. Rates'].apply(lambda x: " 
{0:.2f}%".format(x))
df.head()`

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
/var/folders/_c/86br91rx4fx2j35rrmbfkp6h0000gn/T/ipykernel_6452/1132564018.py in <module>
----> 1 df['Conv. Rates']=df['Conv. Rates'].apply(lambda x: "{0:.2f}%".format(x))
      2 df.head()

/opt/anaconda3/lib/python3.9/site-packages/pandas/core/series.py in apply(self, func, convert_dtype, args, **kwargs)
   4431         dtype: float64
   4432         """
-> 4433         return SeriesApply(self, func, convert_dtype, args, kwargs).apply()
   4434 
   4435     def _reduce(

/opt/anaconda3/lib/python3.9/site-packages/pandas/core/apply.py in apply(self)
   1086             return self.apply_str()
   1087 
-> 1088         return self.apply_standard()
   1089 
   1090     def agg(self):

/opt/anaconda3/lib/python3.9/site-packages/pandas/core/apply.py in apply_standard(self)
   1141                 # List[Union[Callable[..., Any], str]]]]]"; expected
   1142                 # "Callable[[Any], Any]"
-> 1143                 mapped = lib.map_infer(
   1144                     values,
   1145                     f,  # type: ignore[arg-type]

/opt/anaconda3/lib/python3.9/site-packages/pandas/_libs/lib.pyx in pandas._libs.lib.map_infer()

/var/folders/_c/86br91rx4fx2j35rrmbfkp6h0000gn/T/ipykernel_6452/1132564018.py in <lambda>(x)
----> 1 df['Conv. Rates']=df['Conv. Rates'].apply(lambda x: "{0:.2f}%".format(x))
      2 df.head()

ValueError: Unknown format code 'f' for object of type 'str'

问题是x是一个字符串而不是你期望的浮点数,所以"12.345"只是六个字符,就好像它是"python"一样,而 Python 不知道如何用小数点格式化它。

你可以做

df['Conv. Rates'].astype("float")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM