EntityFunction[x,body]
単一の名義的パラメータ x を持つ関数で,EntityValueおよび関連関数で使われる.
EntityFunction[{x1,x2,…},body]
名義的パラメータのリストを持つEntityFunctionである.
EntityFunction
EntityFunction[x,body]
単一の名義的パラメータ x を持つ関数で,EntityValueおよび関連関数で使われる.
EntityFunction[{x1,x2,…},body]
名義的パラメータのリストを持つEntityFunctionである.
詳細
- EntityFunction[x, body]はEntityPropertyと全く同じように動作し,EntityValueの中で直接使うことができる.
- EntityFunction[x,body]の x は,通常は,一度に単一のEntityにしか結び付けられない.AggregatedEntityClassの第2引数は,名義的パラメータが entities の各グループに結び付けられるので,この規則の例外である.
- リレーショナルデータベースがバックエンドの実体についてのAggregatedEntityClass の第2引数のコンテキストでは,次の集計関数がサポートされている.
-
Min 最小値 Max 最大値 Length 値の数 Total 値の合計 Mean 平均値 StandardDeviation サンプルの標準偏差 Variance サンプルの分散 - EntityFunction[{left,right},body]はCombinedEntityClassの条件として現れることができる.ここでは,left はCombinedEntityClassの第1引数の各Entityに結び付けられ,right は第2引数の各Entityに結び付けられる.
- リレーショナルデータベースがバックエンドとなるEntityStoreに登録された実体を扱う場合は,次の形式しかSQLにコンパイルできない.
-
a+b 数,日付,あるいは時間数量間の加算 a-b 数あるいは日付の間の差 a*b 数と数の乗算 a/b 数と数の比 a^b 数と数のベキ Quotient[a,b] 整数の割り算 Mod[a,b] 整数間の除算数の余り Sqrt[a] 平方根 Exp[a] 数の指数 Log,Log10,Log2 底の異なる対数 Abs[a] 絶対値 OddQ[a],EvenQ[a] 整数の偶奇性のチェック ab,a>b,a≠b,… 数,日付,文字列の間の比較 a&&b,a||b,!a,… ブール代数 If[a,b,c] IF文 Which[…] WHICH文 MissingQ[a] 要素が欠けていないかどうかチェックする Length[list]0 リストが空ではないかどうかチェックする OrderedQ[a,b] 文字列がアルファベット順かどうかチェックする MemberQ[list,a] 要素がリストに含まれているかどうか,あるいは実体がクラスに含まれているかどうかをチェックする StringJoin[a,b,…] 文字列の連結 StringMatchQ[…],StringStartsQ[…],… 基本的な文字列マッチング操作 Now,Today 現在の日付を得る AllTrue,AnyTrue リストに対するブール演算 SelectFirst[list,Not@*MissingQ] リスト中で欠落していない最初の値を選択する BitNot,BitAnd,BitOr,BitShiftLeft,… ビット演算 Sin,Cos,Tan,… 三角関数 ArcSin,ArcCos,ArcTan,… 三角関数の逆関数 Sinh,Cosh,Tanh,… 双曲線関数 ArcSinh,ArcCosh,ArcTanh 双曲線関数の逆関数 Round,Floor,Ceiling 丸め関数 Min,Max 最大値と最小値(外部集計) StringTake,StringDrop 列の一部を抽出する(UpToのサポートを含む) ToString[a] 数または日付を文字列に変換する N[a] 整数を実数に変換する IntegerPart[a] 実数の整数部分を抽出する FromDigits[a] 文字列を整数に変換する Boole[a] ブール値を0または1に変換する Interpreter["StructuredDate"][a],Interpreter["StructuredTime"][a],Interpreter["StructuredDateTime"][a] 文字列を日付または時間オブジェクトに変換する UnixTime[a] 日付オブジェクトを時間または数に変換する FromUnixTime[a] 数を時刻付きの日付オブジェクトに変換する JulianDate[a] 日付オブジェクトを数に変換する FromJulianDate[a] 数を日付オブジェクトに変換する DateValue[a,"SecondsFromMidnight"] 時間オブジェクトを数に変換する DateValue[UnixTime[a],"TimeObject"] 数を時間オブジェクトに変換する - リレーショナルデータベースがバックエンドの実体のコンテキストでは,上記の関数はWolfram言語の対応関数よりも機能が制限されるかもしれない.例えば,SQLは複素数をサポートしない.このため,数値関数の定義域は実数値に限られる.記号評価は通常は使用できない.精度追跡の意味も変わるかもしれない.
例題
すべて開く すべて閉じる例 (3)
EntityValue[EntityClass["Element", "NobleGas"], EntityFunction[e, N[e["AtomicMass"] / e["AtomicNumber"]]]]EntityFunctionはEntityPropertyのように,単一の実体に直接適用できる:
EntityFunction[c, c[EntityProperty["Country", "LivestockPopulation", {"FAOLivestockType" -> "Sheep"}]] / c[EntityProperty["Country", "Population"]]][Entity["Country", "Ireland"]]EntityFunctionをFilteredEntityClassの条件として使う:
EntityList[FilteredEntityClass["Country", EntityFunction[c, c["Population"] > Quantity[10^8, "People"]]]]特性と関係 (6)
ExtendedEntityClassの中で使って新たに計算された特性を加える:
ExtendedEntityClass[EntityClass["Country", "G8"], "AdultFraction" -> EntityFunction[c, c["AdultPopulation"] / c["Population"]]]["AdultFraction"]FilteredEntityClassの中で,特定の実体を選択するための述語として使う:
EntityList[FilteredEntityClass["Country", EntityFunction[c, c["Population"] > Quantity[1*10^8, "People"] || c["Continent"] === EntityClass["Country", "Oceania"]]]]SortedEntityClassの中で分類基準として使う:
EntityList[SortedEntityClass[EntityClass["Country", "Europe"], EntityFunction[c, c[EntityProperty["Country", "LivestockPopulation", {"FAOLivestockType" -> "Sheep"}]] / c[EntityProperty["Country", "Population"]] -> "Descending"], 3]]AggregatedEntityClassの第2引数の中でアグリゲータとして使う:
AggregatedEntityClass["Country", "TotalPopulation" -> EntityFunction[e, Total[e[EntityProperty["Country", "Population"]]]]]["TotalPopulation"]AggregatedEntityClassの第3引数の中でグループ化の基準として使う:
AggregatedEntityClass["Country", "MeanArea" -> EntityFunction[e, Mean[e["Area"]]], "RoundedPopulation" -> EntityFunction[c, Round[c["Population"], 100000000]]][{"RoundedPopulation", "MeanArea"}]CombinedEntityClassを結合基準として使う:
CombinedEntityClass["Isotope", EntityClass["Element", "Period1"], EntityFunction[{i, e}, i["AtomicMass"] < e["AtomicMass"]]][{EntityProperty["Isotope", "Name"], EntityProperty["Element", "Name"]}]考えられる問題 (1)
SQLは,Wolfram言語がサポートする全操作をサポートする訳ではない:
EntityRegister[EntityStore[RelationalDatabase[FindFile["ExampleData/ecommerce-database.sqlite"]]]]EntityFunction[e, ToUpperCase[e["firstName"]]][EntityClass["employees", {}]]SQLの数学操作は実数しかサポートしない.複素数を返す操作を行うと,バックエンドによってMissingになるかランタイムエラーになるかするかもしれない:
EntityFunction[p, Sqrt[-p["amount"]]][EntityClass["payments", {}]]//ShortSQLは,特性またはEntityFunctionからスカラー以外のものを返すことはサポートしていない:
EntityClass["customers", {}][EntityFunction[c, c["payments"]["amount"]]]テクニカルノート
関連するガイド
-
▪
- 知識の表現と利用 ▪
- データベースの接続性 ▪
- 工学データ ▪
- リレーショナルデータベースの情報の使用 ▪
- 生命科学と医学のデータと計算 ▪
- 人々と歴史 ▪
- 文化的データ ▪
- 輸送機関データ ▪
- インターネットとコンピュータイステムのデータ ▪
- 物理学と化学のデータと計算 ▪
- 天文学の計算とデータ
テキスト
Wolfram Research (2019), EntityFunction, Wolfram言語関数, https://reference.wolfram.com/language/ref/EntityFunction.html (2020年に更新).
CMS
Wolfram Language. 2019. "EntityFunction." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2020. https://reference.wolfram.com/language/ref/EntityFunction.html.
APA
Wolfram Language. (2019). EntityFunction. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/EntityFunction.html
BibTeX
@misc{reference.wolfram_2026_entityfunction, author="Wolfram Research", title="{EntityFunction}", year="2020", howpublished="\url{https://reference.wolfram.com/language/ref/EntityFunction.html}", note=[Accessed: 12-September-2026]}
BibLaTeX
@online{reference.wolfram_2026_entityfunction, organization={Wolfram Research}, title={EntityFunction}, year={2020}, url={https://reference.wolfram.com/language/ref/EntityFunction.html}, note=[Accessed: 12-September-2026]}