Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在一行代码内将浮点转换为字符串(不包括NaN)?_Python_Pandas - Fatal编程技术网

Python 如何在一行代码内将浮点转换为字符串(不包括NaN)?

Python 如何在一行代码内将浮点转换为字符串(不包括NaN)?,python,pandas,Python,Pandas,我想将一列浮点值转换为字符串,以下是我当前的方式: userdf['phone_num'] = userdf['phone_num'].apply(lambda x: "{:.0f}".format(x) if x is not None else x) 但是,它也会将NaN转换为字符串“NaN”,这在我检查此列中缺少的值时是不好的,有更好的主意吗 谢谢 我认为您应该比较Nan值,而不是比较None值 userdf['phone_num'] = userdf['phone_num'].appl

我想将一列浮点值转换为字符串,以下是我当前的方式:

userdf['phone_num'] = userdf['phone_num'].apply(lambda x: "{:.0f}".format(x) if x is not None else x)
但是,它也会将NaN转换为字符串“NaN”,这在我检查此列中缺少的值时是不好的,有更好的主意吗


谢谢

我认为您应该比较Nan值,而不是比较None值

userdf['phone_num'] = userdf['phone_num'].apply(lambda x: "{:.0f}".
                                          format(x) if not pd.isnull(x) else x)

userdf['phone_num'].astype('str')
或:
df.phone_num.where(pd.notnull,df.phone_num.astype(str))
如果您想保持
NaN
type…您的答案和@AkshayNevrekar都很好,但它在“phone_num”列中保留类型为“float”的缺失值,而其他值为string。因此,如果您需要默认值,则可以在上面的答案中的if条件中添加该值。所以,如果值为NaN@ArpitSolanki谢谢@juanpa.arrivillaga这很好,但问题正如我上面回答的,无论如何,谢谢!