MINIF 函式

針對每個群組中符合特定條件的資料列,產生該資料列的最小值。

注意:在轉換中加入這個函式後,系統會將其套用到目前的樣本。如果您變更樣本或執行工作,此函式所計算出的值也會一併更新。在後續的方案步驟中,會變更資料列數量的轉換並不會影響這個步驟計算出的值。

如要在不設下任何條件的情況下計算資料列的最小值,請使用 MIN 函式。詳情請參閱 MIN 函式 一文。

基本用法

pivot value: MINIF(testScores, testCount >= 3) group:studentId limit:1

輸出:testCount 大於或等於 3 時,系統產生由兩個資料欄組成的資料表,表中含 studentId 的不重複值,以及該 studentIdtestScores 資料欄的最小值。limit 參數可定義輸出資料欄的數量上限。

語法

pivot value:MINIF(col_ref, test_expression) [group:group_col_ref] [limit:limit_count]

引數是否必要?資料類型說明
col_ref字串參照您要求取值的資料欄。
test_expression字串用來求取值的運算式,必須解析為 truefalse

若要進一步瞭解語法標準,請參閱語言文件語法附註

如要進一步瞭解 grouplimit 參數,請參閱 Pivot 轉換一文。

col_ref

您在計算時要使用的來源值資料欄名稱,資料欄必須為數字類型 (整數或小數)。

使用須知:

是否必要?資料類型示例值
對應至資料欄名稱的字串myValues

test_expression

這個參數含有用來求取值的運算式。這個運算式必須解析為布林值 (truefalse)。

使用須知:

是否必要?資料類型示例值
得出的結果值為 truefalse 的字串運算式(LastName == 'Mouse' && FirstName == 'Mickey')

範例

範例 - 條件計算函式

本範例說明如何使用下列的條件計算函式來分析氣象資料:

  • AVERAGEIF - 符合指定條件且依群組區分的一組值的平均值,請參閱 AVERAGEIF 函式
  • MINIF - 符合指定條件且依群組區分的一組值的最小值。請參閱 MINIF 函式
  • MAXIF - 符合指定條件且依群組區分的一組值的最大值。請參閱 MAXIF 函式
  • VARIF - 符合指定條件且依群組區分的一組值的變異數。請參閱 VARIF 函式
  • STDEVIF - 符合指定條件且依群組區分的一組值的標準差。請參閱 STDEVIF 函式

來源:

以下是部分氣象資料示例:

datecityraintempwind
1/23/17Valleyville0.0012.86.7
1/23/17Center Town0.319.45.3
1/23/17Magic Mountain0.000.07.3
1/24/17Valleyville0.2517.23.3
1/24/17Center Town0.541.17.6
1/24/17Magic Mountain0.325.08.8
1/25/17Valleyville0.023.36.8
1/25/17Center Town0.833.35.1
1/25/17Magic Mountain0.59-1.76.4
1/26/17Valleyville1.0815.04.2
1/26/17Center Town0.966.17.6
1/26/17Magic Mountain0.77-3.93.0
1/27/17Valleyville1.007.22.8
1/27/17Center Town1.3220.00.2
1/27/17Magic Mountain0.775.65.2
1/28/17Valleyville0.12-6.15.1
1/28/17Center Town0.145.04.9
1/28/17Magic Mountain1.501.10.4
1/29/17Valleyville0.3613.37.3
1/29/17Center Town0.756.19.0
1/29/17Magic Mountain0.603.36.0


轉換:

下列指令會計算各城市雨天的平均溫度:

derive type:single value:AVERAGEIF(temp, rain > 0) group:city as:'avgTempWRain'

下列指令會計算各城市零度以下日子的最大風速:

derive type:single value:MAXIF(wind,temp < 0) group:city as:'maxWindSubZero'

此步驟會計算各城市風速低於每小時 5 英里時的最低氣溫:

derive type:single value:MINIF(temp,wind<5) group:city as:'minTempWind5'

此步驟計算各城市雨天的溫度變異數:

derive type:single value:VARIF(temp,rain >0) group:city as:'varTempWRain'

下列指令會計算 Center Town 的雨量標準差:

derive type:single value:STDEVIF(rain,city=='Center Town') as:'stDevRainCT'

您可以使用下列轉換指令,設定產生的輸出結果的格式。請注意多資料欄轉換的 $col 預留位置值:

set col:stDevRainCenterTown,maxWindSubZero value:numformat($col,'##.##')

由於下列指令使用的資料在小數點以後只有一個有效數字,請分開設定其格式:

set col:varTempWRain,avgTempWRain,minTempWind5 value:numformat($col,'##.#')

結果:

datecityraintempwindavgTempWRainmaxWindSubZerominTempWind5varTempWRainstDevRainCT
1/23/17Valleyville0.0012.86.78.35.17.263.80.37
1/23/17Center Town0.319.45.37.3 532.60.37
1/23/17Magic Mountain0.000.07.31.66.43-3.9120.37
1/24/17Valleyville0.2517.23.38.35.17.263.80.37
1/24/17Center Town0.541.17.67.3 532.60.37
1/24/17Magic Mountain0.325.08.81.66.43-3.9120.37
1/25/17Valleyville0.023.36.88.35.17.263.80.37
1/25/17Center Town0.833.35.17.3 532.60.37
1/25/17Magic Mountain0.59-1.76.41.66.43-3.9120.37
1/26/17Valleyville1.0815.04.28.35.17.263.80.37
1/26/17Center Town0.966.17.67.3 532.60.37
1/26/17Magic Mountain0.77-3.93.01.66.43-3.9120.37
1/27/17Valleyville1.007.22.88.35.17.263.80.37
1/27/17Center Town1.3220.00.27.3 532.60.37
1/27/17Magic Mountain0.775.65.21.66.43-3.9120.37
1/28/17Valleyville0.12-6.15.18.35.17.263.80.37
1/28/17Center Town0.145.04.97.3 532.60.37
1/28/17Magic Mountain1.501.10.41.66.43-3.9120.37
1/29/17Valleyville0.3613.37.38.35.17.263.80.37
1/29/17Center Town0.756.19.07.3 532.60.37
1/29/17Magic Mountain0.603.36.01.66.43-3.9120.37

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Google Cloud Dataprep 說明文件
需要協助嗎?請前往我們的支援網頁