首页 > 解决方案 > 通过 for 循环将几列除以一个常量

问题描述

我想通过python中的for循环将几列除以相同的常数。以下是我的数据框的一个子集:

数据框:DF

team   group1   group2   group3   group4
blue   100      400      650      75
green  150      500      350      186
red    200      600      175      540
orange 250      700      900      375

我尝试过:

for col in DF.columns[1:]:
    DF[col] = df[col]/10

下面的代码有效,但我想使用 for 循环遍历所有列。理想情况下,我不想选择数字列并将除法应用于所有列,如果它确实遇到字符串,则忽略该字符串

DF['group1'] = DF['group1']/10 

我得到的错误是:'不支持的操作数类型/:'str'和'int'

标签: pythonpandas

解决方案


这应该工作

df.loc[:, df.columns[1:]] / 10

推荐阅读