ReverseSortBy[list,f]
f を各要素に適用した結果によって定義される正順の逆を使って list の要素をソートする.
ReverseSortBy[list,f,p]
関数 p を使って f を各要素に適用した結果のペアを比較することで list の各要素をソートする.
式に適用できるReverseSortByの演算子形を表す.
ReverseSortBy
ReverseSortBy[list,f]
f を各要素に適用した結果によって定義される正順の逆を使って list の要素をソートする.
ReverseSortBy[list,f,p]
関数 p を使って f を各要素に適用した結果のペアを比較することで list の各要素をソートする.
式に適用できるReverseSortByの演算子形を表す.
詳細
- ReverseSortBy[{e1,e2,e3,…},f]は,f[ei]が正順の逆になるように eiをソートする.
- f[ei]の中に同じものがある場合は,対応する eiの正順の逆が使われる.
- ReverseSortBy[list,f]は,SortBy[list,f]の結果を逆にしたものに等しい.
- ReverseSortBy[{e1,e2,e3,…},f,p]の結果における要素 eiは,p[f[ei],f[ej]]が-1またはFalseの場合は ejの前にソートされる.
- ReverseSortBy[list,{f1,f2,…}]は,fiから得られた値を連続的に使って順序が等しいものに対処する.
- ReverseSortByは,任意の頭部(Listに限定されない)を持つ式に使うことができる.
- ReverseSortBy[f][list]はReverseSortBy[list,f]に等しい.
例題
すべて開く すべて閉じる例 (5)
リストのリストを各部分リストの最終要素によって逆順にソートする:
ReverseSortBy[{{1, 3}, {2, 1}, {2, 2}, {3, 2}}, Last]ReverseSortBy[{{1, 3}, {2, 1}, {2, 2}, {3, 2}}, Total]ReverseSortBy[Range[10], Mod[#, 3]&]Associationの要素を,3を法とした値で逆順にソートする:
ReverseSortBy[<|2 -> 1, 3 -> 2, 1 -> 3|>, Mod[#, 3]&]ReverseSortByの演算子形を使う:
ReverseSortBy[Last][{{1, 3}, {2, 1}, {2, 2}, {3, 2}}]スコープ (6)
ReverseSortBy[{E, Pi, Sin[1], Sqrt[2]}, N]ReverseSort[{E, Pi, Sin[1], Sqrt[2]}]ReverseSortBy[{1., Sqrt[1 + Exp[-10]], Exp[2 + I], Exp[2 I - 1], Exp[I]}, N[Abs[#]]&]data = RandomComplex[{-1 - I, 1 + I}, 20];listOrderPlot[data_] := Graphics[Map[Arrow, Partition[Map[{Re[#], Im[#]}&, data], 2, 1]], PlotRange -> 1, Frame -> True]Table[listOrderPlot@ReverseSortBy[data, f], {f, {Re, Im, Arg, Abs}}]dates = {"Mon 21 May 2007 08:20:36", "Sun 4 Mar 2007 04:42:29", "Thu 8 Mar 2007 18:21:40", "Thu 8 Mar 2007 18:08:36", "Sun 2 Jan 2005 07:50:25", "Wed 11 Mar 2009 08:10:14", "Thu 8 Mar 2007 22:02:12", "Thu 8 Mar 2007 18:07:24", "Thu 8 Mar 2007 18:08:43", "Fri 9 Mar 2007 08:54:39"};TableForm[ReverseSortBy[dates, AbsoluteTime]]タイタニック号のリソースデータからサンプルとして数行取り出す:
tab = RandomSample[ResourceData["Sample Tabular Data: Titanic"], 8]これを年齢の逆順にソートして,末尾にMissing[…]を置く:
ReverseSortBy[tab, Function[#age]]ReverseSortBy[tab, "age"]ReverseSortBy[{Sqrt[1 + Exp[-10I]], Exp[2 + I], Exp[2 I - 1], Exp[I]}, Abs, NumericalOrder]Abs[%]//NReverseSortBy[{Sqrt[1 + Exp[-10I]], Exp[2 + I], Exp[2 I - 1], Exp[I]}, Abs]Abs[%]//NReverseSortBy[{"dog", "zebra", "donkey", "anteater", "fish"}, StringLength]Greaterを順序関数として使って文字列を逆順にソートする:
ReverseSortBy[{"dog", "zebra", "donkey", "anteater", "fish"}, StringLength, Greater]一般化と拡張 (1)
ReverseSortByは,任意の頭部を持つ式に使うことができる:
ReverseSortBy[g[h[1, 2], h[1, 1], h[2, 2], h[1]], Last]アプリケーション (1)
数学的に等しい式を,さまざまな基準によって逆順にソートする:
e = Sin[2 x] / (1 - Cos[x] ^ 2) + Cos[2 x] / (1 - Sin[x] ^ 2);
ops = {Identity, Together, TrigReduce, TrigExpand, Simplify, FullSimplify};
exprs = Table[op[e], {op, ops}];TableForm[Transpose[{ops, exprs}]]LeafCountによって逆順にソートする:
ReverseSortBy[exprs, LeafCount]hp = N[e /. x -> 1, 100];
err[e_] := Abs[hp - N[e /. x -> 1.]];ReverseSortBy[exprs, err]特性と関係 (1)
ReverseSortBy[list,f]は,たとえ同じ順序のものがあっても,Reverse[SortBy[list,f]]と等価である:
list = Range[-5, 5]ReverseSortBy[list, Abs]% === Reverse[SortBy[list, Abs]]ReverseSortBy[list,{f}]を使って同じ順序のものの並べ替えをしないようにする:
ReverseSortBy[list, {Abs}]関連するガイド
-
▪
- リストの並べ替えと再構築 ▪
- 表形式の変換
テキスト
Wolfram Research (2019), ReverseSortBy, Wolfram言語関数, https://reference.wolfram.com/language/ref/ReverseSortBy.html.
CMS
Wolfram Language. 2019. "ReverseSortBy." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/ReverseSortBy.html.
APA
Wolfram Language. (2019). ReverseSortBy. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ReverseSortBy.html
BibTeX
@misc{reference.wolfram_2026_reversesortby, author="Wolfram Research", title="{ReverseSortBy}", year="2019", howpublished="\url{https://reference.wolfram.com/language/ref/ReverseSortBy.html}", note=[Accessed: 09-November-2026]}
BibLaTeX
@online{reference.wolfram_2026_reversesortby, organization={Wolfram Research}, title={ReverseSortBy}, year={2019}, url={https://reference.wolfram.com/language/ref/ReverseSortBy.html}, note=[Accessed: 09-November-2026]}