熊猫条件乘法

Jam*_*mmy 2 python pandas

我有以下熊猫DataFrame,我正在尝试做一些清理。就我而言,我正在以原始十进制格式接收产品“ a”数据,而我需要将其百分比表示以与其他产品的格式保持一致。

如何调整的success_ratemarket_penetration_rate只有在案件100在我的数据帧时,产品=一个

import pandas as pd

df = pd.DataFrame({'product' : ['a', 'a', 'c', 'c', 'd', 'b', 'a', 'b', 'c'],
               'success_rate' : [0.2, 1.0, 67.0, 71.5, 23.2, 71.0, 0.44, 59.3, 12.7],
               'market_penetration_rate' : [0.82, 0.64, 77.5, 12.5, 22.5, 88.0, 0.34, 98.2, 87.4]})
Run Code Online (Sandbox Code Playgroud)
+ ---------- + -------------- + ----------------------- -+
| 产品| 成功率| market_penetration_rate |
| | | |
| 一个| 0.2 | 0.82 |
| | | |
| 一个| 1 | 0.64 |
| | | |
| c | 67 | 77.5 |
| | | |
| c | 71.5 | 12.5 |
| | | |
| d | 23.2 | 22.5 |
| | | |
| b | 71 | 88 |
| | | |
| 一个| 0.44 | 0.34 |
| | | |
| b | 59.3 | 98.2 |
| | | |
| c | 12.7 | 87.4 |
+ ---------- + -------------- + ----------------------- -+

Hap*_*001 8

In [7]: print df.loc[df['product']=='a', ['market_penetration_rate', 'success_rate']] * 100
   market_penetration_rate  success_rate
0                       82            20
1                       64           100
6                       34            44
Run Code Online (Sandbox Code Playgroud)

或者,如果您想就地缩放,

In [8]: df.loc[df['product']=='a', ['market_penetration_rate', 'success_rate']] *= 100
Run Code Online (Sandbox Code Playgroud)