У меня есть следующий кадр данных pandas, и я хотел бы нормализовать единицы измерения в мг / кг, умножив каждую строку столбца данных на соответствующий коэффициент:
df
Out[28]:
analyte data unit
0 A 2.34 mg/kg
1 B 5.89 ng/kg
2 C 1.25 ug/kg
3 D 8.65 mg/kg
Как бы я векторизовал следующий код(поскольку реальная датафрейм несколько больше):
units = {
"mg/kg": 1,
"ug/kg": 1e+3,
"ng/kg": 1e+6
}
for index, row in df.iterrows():
df.at[index,'data'] = row['data'] * units[row['unit']]
df['unit'] = 'mg/kg'