Как создать двоичную переменную на основе некоторых значений в другом столбце в Python? - PullRequest
0 голосов
/ 31 января 2019

Есть ли лучший способ сделать это?

## LVEF
combined_df['binary_LVEF'] = 0
combined_df['binary_LVEF'][combined_df['LVEF'] <= 40] = 1

## GLS
combined_df['binary_GLS'] = 0
combined_df['binary_GLS'][combined_df['GLS'] > -15] = 1

## ACC/AHA
combined_df['binary_ACC'] = 0
combined_df['binary_ACC'][combined_df['ACC-AHA stage'].isin([3,4])] = 1

## NYHA
combined_df['binary_NYHA'] = 0
combined_df['binary_NYHA'][combined_df['NYHA class'].isin([3,4])] = 1

## Average E/e'
combined_df['binary_Ee_prime'] = 0
combined_df['binary_Ee_prime'][combined_df['Average Ee prime ratio'] > 14] = 1

## Average e'
combined_df['binary_e_prime'] = 0
combined_df['binary_e_prime'][combined_df['Average e prime'] < 8.5] = 1

## LA ESVI
combined_df['binary_LAESVI'] = 0
combined_df['binary_LAESVI'][combined_df['LA ESVI'] > 34] = 1

Как видите, я повторяюсь несколько раз.Как я могу упростить это, используя функции или любой другой «pythonian» метод, чтобы я не повторялся и что, если мне нужно будет добавить другую переменную, это будет быстрее.

Если вы заметили, условия могут измениться и могут также зависеть от того, являются ли переменные категориальными или числовыми.

Кроме того, я хотел бы сохранить их в панде DataFrame

...