2017-01-12 7 views
-1

Вот мой текущий код: «? WSITemp> AlmTemp»Python: Использование где оператор установить значения для нового столбца из 3 вариантов этикетки

merged_left_2['WSITemp>AlmTemp?'] = np.where( 
    merged_left_2['surfaceTemperatureFahrenheit'] > merged_left_2['mean_temp'], 
    'hrs_avgtemp_ABOVE_30yrnorm', 'hrs_avgtemp_BELOW_30yrnorm') 

Он утверждает, что если 'surfaceTemperatureFahrenheit' > 'mean_temp', то маркировать новый столбец как «hrs_avgtemp_ABOVE_30yrnorm». В противном случае отметьте столбец как «hrs_avgtemp_BELOW_30yrnorm».

Как изменить приведенный выше код, чтобы обозначить новый столбец hrs_avgtemp_EQUAL_30yrnorm, если значения в точности равны друг другу?

* Любая помощь очень ценится.

ответ

0

Вы можете добавить еще np.where

merged_left_2['WSITemp>AlmTemp?'] = np.where(
    merged_left_2['surfaceTemperatureFahrenheit'] > merged_left_2['mean_temp'], 
    'hrs_avgtemp_ABOVE_30yrnorm', np.where(
    merged_left_2['surfaceTemperatureFahrenheit'] = merged_left_2['mean_temp'], 
    'hrs_avgtemp_EQUAL_30yrnorm', 'hrs_avgtemp_BELOW_30yrnorm'))