여러 조건이 있는 Numpy "where": 세 가지 조건 처리
문제 설명:
세 가지 이상의 조건에 직면하면 여러 조건을 기반으로 데이터 프레임에 새 열을 추가하는 것이 어려워집니다. 주어진 시나리오에서는 "consumption_energy" 열 값을 기준으로 "high", "medium" 또는 "low" 값을 갖는 "energy_class" 열을 생성해야 합니다.
해결책:
numpy.where는 두 가지 조건만 처리할 수 있지만 numpy.select를 사용하는 영리한 해결 방법으로 문제가 해결됩니다.
Python 코드:
<code class="python"># Define column and conditions col = 'consumption_energy' conditions = [df2[col] >= 400, (df2[col] < 400) & (df2[col] > 200), df2[col] <= 200] # Define choices for conditions choices = ["high", 'medium', 'low'] # Add "energy_class" column with np.select df2["energy_class"] = np.select(conditions, choices, default=np.nan)</code>
출력 예:
consumption_energy energy_class 0 459 high 1 416 high 2 186 low 3 250 medium 4 411 high 5 210 medium 6 343 medium 7 328 medium 8 208 medium 9 223 medium
추가 참고:
default=np.nan은 어떤 조건도 충족하지 않는 행에 NaN 값을 할당합니다. . 필요에 맞게 맞춤설정할 수 있습니다.
위 내용은 세 개 이상의 조건과 함께 Numpy \'where\'를 사용하여 DataFrame에 열을 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!