我试图添加逗号分隔符表示千到我的字符串在数据帧的一列。有人可以帮助格式?我不明白如何在数据帧
Top15['PopEst'] = re.sub("(\d)(?=(\d{3})+(?!\d))", r"\1,", "%d" % Top15['PopEst'])
我试图添加逗号分隔符表示千到我的字符串在数据帧的一列。有人可以帮助格式?我不明白如何在数据帧
Top15['PopEst'] = re.sub("(\d)(?=(\d{3})+(?!\d))", r"\1,", "%d" % Top15['PopEst'])
我认为这样做是为了整列你正在寻找的是这样的:
Top15["PopEst"] = Top15["PopEst"].map(lambda x: "{:,}".format(x))
的"{:,}".format()
将工作作为一个千个分隔符为单string
/float
/int
,因此您可以使用map()
将其应用于列中的每个元素。
我想这会帮助你。
v= format(12345678, ',d')
print(v)
//12,345,678
Top15['PopEst']=(Top15['Energy Supply']/Top15['Energy Supply per Capita'])
df = Top15[['PopEst']]
df = df.reset_index()
i=0
while(len(df)>i):
v =str(df.iloc[i]['PopEst']).split('.')
strr = str(format(int(v[0]), ',d'))+"."+v[1]
df.iloc[i] = df.iloc[i].replace(df.iloc[i]['PopEst'],strr)
i = i+1
df.set_index(['Country Name'], inplace=True)
仅供参考,http://stackoverflow.com/a/11562205/3832970 –
我从那里得到了最初的代码。我不明白如何为数据框中的整个行执行此操作。 –
使用df ['column_name'] .application()方法。 – MYGz