MinimalBy
詳細
- デフォルトで,f[ei]の値はSortにおけるのと同じ正規順序でOrderを使って比べられる.
- MinimalBy[data,f]はデータの最小の要素 eiのリストを入力に現れる順に返す.
- MinimalBy[data,f,n]は,eiを f[ei]の昇順にソートして返す.同じ値の f[ei]を持つものは,list に現れる順に取られる.
- data の形式は以下でよい.
-
{e1,e2,…} 数,数量,日付等を含む値のリスト Association[…] 値の連想 » QuantityArray[…] 数量配列またはその他の構造化配列 » Tabular[…] 型が一貫した表形式データ » TabularColumn[…] 型が一貫した列データ » Dataset[…] 一般的な階層型データ » - 表形式データ tab については,MinimalBy[tab,f,…]は tab の各行に関数 f を適用する.tab に列キーがあれば行は連想<|col1val1,…|>になり,tab に列キーがなければリスト{val1,…}になる.
- MinimalBy[list,f, UpTo[n]]は n 個(それより少ない場合はできるだけ多く)の要素を返す. »
- MinimalBy[f][expr]は,MinimalBy[expr,f]に等しい. »
例題
すべて開く すべて閉じる例 (4)
MinimalBy[{{a, 3}, {b, 2}, {a, 2}, {d, 1}, {b, 3}}, Last]MinimalByの演算子形を使って同じことを行う:
MinimalBy[Last][{{a, 1}, {b, 1}, {a, 2}, {d, 1}, {b, 3}}]MinimalBy[{{d, 1}, {b, 2}, {b, 3}, {d, 2}, {a, 1}}, Last]MinimalBy[{{d, 1}, {b, 2}, {b, 3}, {d, 2}, {a, 1}}, Last, 3]MinimalBy[<|"a" -> {4, 1}, "b" -> {2, 3}, "b" -> {4, 2}, "d" -> {1, 1}|>, Last]スコープ (10)
小さい方から4つ(あるいはできるだけ多く)の要素を入手する:
MinimalBy[{{a, 1}, {b, 1}, {b, 3}}, First, UpTo[4]]MinimalByは記号式に使うことができる.デフォルトで,正規順序(Order)が使われる:
MinimalBy[{{a, 1}, {b, 1}, {b, 3}, {d, 2}, {a, 3}}, First]さまざまな単位が付いた比較可能なリスト中の最小要素を求める:
data = {Quantity[3, "Feet"], Quantity[9, "Inches"], Quantity[1, "Meters"]};QuantityMagnitudeを使った比較では,単位情報が失われる:
MinimalBy[data, QuantityMagnitude]MinimalBy[data, NumericalSort]MinimalByはQuantityArrayに使うことができる:
data = QuantityArray[RandomReal[1, {6, 2}], {"Meters", "Seconds"}]MinimalBy[data, Last]//NormalMinimalByは,デフォルトで,正規順序に従って日付を並べる:
dates = {DateObject[{2022, 9, 12}], "12 Sept 2024", {2023, 9, 12}};MinimalBy[dates, Identity]MinimalBy[dates, AbsoluteTime]同様に,日付をDateObject形式に変換してOrderの代りにNumericalOrderを使うこともできる:
MinimalBy[dates, DateObject, 1, NumericalOrder]letters = Entity["Alphabet", "Polish::7949q"]["CommonAlphabet"]hiragana = Transliterate[letters, "Polish" -> "Hiragana"]次は,標準的な順序によるポーランド語のアルファベットで最も小さい5つの文字である:
MinimalBy[letters, Identity, 5]MinimalBy[letters, Identity, 5, AlphabeticOrder["Polish"]]次は,平仮名音訳の標準的な順序に従ったポーランド語で最も小さい5文字のである:
MinimalBy[letters, Transliterate[#, "Polish" -> "Hiragana"]&, 5]次は,日本語に音訳されたアルファベット順によるポーランド語の最も小さい5文字である:
MinimalBy[letters, Transliterate[#, "Polish" -> "Hiragana"]&, 5, AlphabeticOrder["Japanese"]]100語でTabularColumnオブジェクトを構築する:
col = TabularColumn[RandomWord[100]]MinimalBy[col, StringLength, 5]Normal[%]指定の列の値が最小であるTabularオブジェクトの4行を求める:
data = {{8, 13, 18, 8, 14, 13, 18, 27}, {16.1, 29.2, 23.8, 14.7, 30.1, 27.5, 35.1, 36.2}};
tab = ToTabular[data, "Columns", {"size", "length"}]MinimalBy[tab, "size", 4]MinimalBy[tab, #size&, 4]MinimalBy[tab, (#length - #size)&, 4]dataset = Dataset[ExampleData[{"Dataset", "Planets"}], MaxItems -> 4]MinimalBy[dataset, Length[#Moons]&, 3]//Keys異なる要素 eiについて共通の f[ei]の値があるときは,もとの順序が保持される:
list = Range[-5, 5]MinimalBy[list, Abs, 4]MinimalBy[Reverse[list], Abs, 4]アプリケーション (3)
ExampleData["Text"]内の使用可能な最も短い4つのテキストを求める:
MinimalBy[ExampleData["Text"], StringLength @* ExampleData, 4]MinimalBy[ConstellationData[], Length @* EntityProperty["Constellation", "BrightStars"], 5]dataset = Dataset[ExampleData[{"Dataset", "Planets"}], MaxItems -> 4]MinimalBy[dataset, #Mass&, 2]//Keys特性と関係 (3)
MinimalBy[{e1,e2,…},f,n]は正規のOrderを使って f[ei]の値を比較する:
data = {{1, x}, {0, x}, {-Infinity, x}};MinimalBy[data, First, 2]Sort[First /@ data, Order]TakeSmallestBy[{e1,e2,…},f,n]はNumericalOrderを使って f[ei]の値を比較する:
TakeSmallestBy[data, First, 2]Sort[First /@ data, NumericalOrder]特定の順序付関数 p について,MinimalBy[data,f,n,p]はTakeSmallestBy[data,f,n,p]に等しい:
planets = PlanetData[]MinimalBy[planets, EntityProperty["Planet", "Name"], 4, AlphabeticOrder]TakeSmallestBy[planets, EntityProperty["Planet", "Name"], 4, AlphabeticOrder]assoc = <|"a" -> {4, 1}, "b" -> {2, 2}, "c" -> {2, 3}, "d" -> {4, 2}, "e" -> {1, 1}|>;Values[MinimalBy[assoc, First]] === MinimalBy[Values[assoc], First]考えられる問題 (1)
デフォルトで,最小要素は,数値順ではなく,OrderedQを使って決定される:
MinimalBy[{Pi, 4, 5, 6, 7}, Identity]MinimalBy[{BesselJ[0, 1], BesselJ[1, 1]}, Identity]MinimalBy[{Pi, 4, 5, 6, 7}, N]MinimalBy[{BesselJ[0, 1], BesselJ[1, 1]}, N]関連するガイド
-
▪
- リストへの数学的およびカウント操作 ▪
- リストの要素 ▪
- 関数の合成と演算子形式 ▪
- 表形式オブジェクト
テキスト
Wolfram Research (2014), MinimalBy, Wolfram言語関数, https://reference.wolfram.com/language/ref/MinimalBy.html (2025年に更新).
CMS
Wolfram Language. 2014. "MinimalBy." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2025. https://reference.wolfram.com/language/ref/MinimalBy.html.
APA
Wolfram Language. (2014). MinimalBy. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/MinimalBy.html
BibTeX
@misc{reference.wolfram_2026_minimalby, author="Wolfram Research", title="{MinimalBy}", year="2025", howpublished="\url{https://reference.wolfram.com/language/ref/MinimalBy.html}", note=[Accessed: 01-November-2026]}
BibLaTeX
@online{reference.wolfram_2026_minimalby, organization={Wolfram Research}, title={MinimalBy}, year={2025}, url={https://reference.wolfram.com/language/ref/MinimalBy.html}, note=[Accessed: 01-November-2026]}