当前位置: 首页 > 面试题库 >

将某些浮动数据框列格式化为pandas百分比

徐安康
2023-03-14
问题内容

我正在尝试在IPython笔记本中写论文,但是在显示格式方面遇到了一些问题。说我有以下dataframe
df,有什么方法可以格式化var1var2转换为2位小数并var3转换为百分比。

       var1        var2         var3    
id                                              
0    1.458315    1.500092   -0.005709   
1    1.576704    1.608445   -0.005122    
2    1.629253    1.652577   -0.004754    
3    1.669331    1.685456   -0.003525   
4    1.705139    1.712096   -0.003134   
5    1.740447    1.741961   -0.001223   
6    1.775980    1.770801   -0.001723    
7    1.812037    1.799327   -0.002013    
8    1.853130    1.822982   -0.001396    
9    1.943985    1.868401    0.005732

内部数字不乘以100,例如-0.0057 = -0.57%。


问题答案:

使用round函数替换值,并格式化百分比数字的字符串表示形式:

df['var2'] = pd.Series([round(val, 2) for val in df['var2']], index = df.index)
df['var3'] = pd.Series(["{0:.2f}%".format(val * 100) for val in df['var3']], index = df.index)

舍入函数将浮点数舍入为该函数的第二个参数提供的小数位数。

字符串格式可让您根据需要表示数字。您可以通过更改f。之前的数字来更改显示的小数位数。

ps:我不确定您的“百分比”数字是否已经乘以100。如果它们已经清楚了,您将希望更改显示的小数位数,并删除百分位数。



 类似资料:
  • 我试图在IPython笔记本上写一篇论文,但在显示格式方面遇到了一些问题。假设我有以下数据帧,是否有方法将和格式化为2位小数,将格式化为百分比。 里面的数字不乘以100,例如-0.0057=-0.57%。

  • 问题内容: 我需要将列表转换为一列熊猫数据框 当前列表(len = 3): 所需的熊猫DF(形状= 3,): 请注意,这些数字代表上述“必需熊猫” DF中的索引。 问题答案: 采用: 谢谢DYZ:

  • 问题内容: 我试图将输出转换为熊猫数据框,但我很努力。我有这个清单 我想创建一个具有3列和3行的熊猫数据框。我尝试使用 但它似乎对我不起作用。任何帮助,将不胜感激。 问题答案: 您需要转换为然后:

  • 问题内容: 我想在中设置多列的(我有一个文件,我不得不手动将其解析为列表列表,因为该文件不适合) 我懂了 我可以设置它们的唯一方法是循环遍历每个列变量并使用重铸。 有没有更好的办法? 问题答案: 从0.17开始,您必须使用显式转换: (如下所述,在0.17中已不再使用“魔术”了) 您可以将它们应用于要转换的每一列: 并确认dtype已更新。 适用于大熊猫0.12-0.16的旧/建议答案:您可以用来

  • 问题内容: 在熊猫中使用read_csv时,是否可以将“ 34%”之类的值直接转换为int或float?我希望将其直接读取为0.34。 在read_csv中使用它不起作用: 在将csv加载为’df’之后,这也无法正常工作,并显示错误“ float()的无效文字:34%” 我最终使用了这个可行但长期困扰的东西: 问题答案: 您可以定义一个自定义函数以将百分比转换为浮点数 我对浮点数的百分比是ashw

  • 问题内容: 我有一个带有多个列以及一个日期列的数据框。日期格式为15年12月31日,我将其设置为日期时间对象。 我将datetime列设置为索引,并希望对数据框的每个月执行回归计算。 我相信实现此目的的方法是将数据框基于月份拆分为多个数据框,存储到数据框列表中,然后对列表中的每个数据框执行回归。 我使用过groupby可以按月成功拆分数据框,但是不确定如何正确地将groupby对象中的每个组转换为