代码之家  ›  专栏  ›  技术社区  ›  Hariom Singh

向带有百分号的panda数据框添加百分比列

  •  1
  • Hariom Singh  · 技术社区  · 7 年前

    下面的excel将用作panda数据框

       df['% '] = (df['Code Lines'] / df['Code Lines'].sum())*100
    

    输出来了

    Language    # of Files  Blank Lines Comment Lines   Code Lines   % 
    C++            15         66         35               354      3.064935065
    C/C++ Header    1         3          7                 4       0.034632035
    Markdown        6         73         0                142      1.229437229
    Python         110        1998      2086              4982     43.13419913
    Tcl/Tk          1         14         18               273      2.363636364
    YAML            1          0         6                 20      0.173160173
    Total          134        2154      2152                5775    50
    

    我试图得到%列应该只有两个带百分号的小数位

    像这样的东西

    Language    # of Files  Blank Lines Comment Lines   Code Lines   % 
    C++            15         66         35               354      3.06%
    C/C++ Header    1         3          7                 4       0.03%
    Markdown        6         73         0                142      1.22%
    
    1 回复  |  直到 7 年前
        1
  •  2
  •   jezrael    7 年前

    使用 round ,转换为字符串并添加 % :

    df['%'] = ((df['Code Lines'] / df['Code Lines'].sum())*100).round(2).astype(str) + '%'