Python 数据框中的舍入和千位分隔符:无法去掉小数
我必须使用pandas v0.16.2(!),并且我必须使用一些基本格式 如何去掉小数点并在下面的“val”列中应用千位分隔符。这是我的尝试,结果仍然是一个小数点Python 数据框中的舍入和千位分隔符:无法去掉小数,python,pandas,Python,Pandas,我必须使用pandas v0.16.2(!),并且我必须使用一些基本格式 如何去掉小数点并在下面的“val”列中应用千位分隔符。这是我的尝试,结果仍然是一个小数点 import pandas as pd import numpy as np df = pd.DataFrame({'name':['abc', 'bvn'],'val' : [100000.1234,2000000.1234]}) df['val'] = df['val'].apply(lambda x: '{:,}'.forma
import pandas as pd
import numpy as np
df = pd.DataFrame({'name':['abc', 'bvn'],'val' : [100000.1234,2000000.1234]})
df['val'] = df['val'].apply(lambda x: '{:,}'.format(np.round(x,0)))
print(df)
函数的round()
返回一个浮点数,这意味着您仍然可以在字符串表示中得到该小数
>圆形(3.1)
3
消除小数点的一个简单方法是将其转换为整数:
>>整数(圆形(3.1))
3.
在您的代码中,这将是:
df=pd.DataFrame({'name':['abc','bvn'],'val':[100000.12342000000.1234]})
df['val']=df['val'].apply(lambda x:'{:,}'。格式(int(np.round(x,0)))
打印(df)
函数round()
返回一个浮点数,这意味着您仍然可以在字符串表示形式中获得该小数
>圆形(3.1)
3
消除小数点的一个简单方法是将其转换为整数:
>>整数(圆形(3.1))
3.
在您的代码中,这将是:
df=pd.DataFrame({'name':['abc','bvn'],'val':[100000.12342000000.1234]})
df['val']=df['val'].apply(lambda x:'{:,}'。格式(int(np.round(x,0)))
打印(df)