2016-11-28 71 views
1

Top15.head()添加逗号分隔符为字符串的数据帧列与大熊猫

我试图添加逗号分隔符表示千到我的字符串在数据帧的一列。有人可以帮助格式?我不明白如何在数据帧

Top15['PopEst'] = re.sub("(\d)(?=(\d{3})+(?!\d))", r"\1,", "%d" % Top15['PopEst']) 
+1

仅供参考,http://stackoverflow.com/a/11562205/3832970 –

+0

我从那里得到了最初的代码。我不明白如何为数据框中的整个行执行此操作。 –

+0

使用df ['column_name'] .application()方法。 – MYGz

回答

2

我认为这样做是为了整列你正在寻找的是这样的:

Top15["PopEst"] = Top15["PopEst"].map(lambda x: "{:,}".format(x)) 

"{:,}".format()将工作作为一个千个分隔符为单string/float/int,因此您可以使用map()将其应用于列中的每个元素。

0

我想这会帮助你。

v= format(12345678, ',d') 
print(v) 
//12,345,678 
0
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)