熊猫-使用for循环添加新的计算列

时间:2018-11-30 18:57:56

标签: python loops for-loop

我有一个包含许多列的数据框,需要将它们除以一列以计算比例。有人可以为此提供for循环吗?在下面的给定数据示例中,我要添加列c1p = c1/ct, c2p=c2/ct, c3p=c3/ct, c4p=c4/ct

id   c1   c2   c3   c4   ct
1    6    8    8    12    34
2    5    3    11   6     25 
3    3    9    6    12    30
4    14   10   10   3     37

2 个答案:

答案 0 :(得分:0)

DataFrames的强大之处在于您可以逐列进行操作。像这样:

for i in range(1, 5):
    df[f'c{i}p'] = df[f'[c{i}'] / df['ct']

答案 1 :(得分:0)

这里是一种矢量化方法,用于获取另一个包含您需要的所有单位值的数据帧df_p

df_p = df.filter(regex='c[0-9]').divide(df['ct'], axis=0)