Wolfram言語

Knowledgebaseへの幅広いアクセス

Wolfram言語の自己分析

Wolfram Knowledgebaseには外部実体についてだけでなくWolfram言語そのものについての詳細な情報も含まれている.この知識を使って言語の構造(と進化)について調べることができる. この知識は,興味がある機能を発見する上でも役に立つ.ここでは,一定の興味基準を満たすWolfram言語のシンボルの特定に,隠的に定義された実体クラスが使われている.

隠的に定義されたクラスを使ってバージョン11で導入されたシンボルを特定する.

In[1]:=
Click for copyable input
EntityList[ EntityClass["WolframLanguageSymbol", "VersionIntroduced" -> 11]] // Take[#, 20] &
Out[1]=

バージョン10で導入され,11で更新されたシンボルを抽出する.

In[2]:=
Click for copyable input
EntityList[EntityClass["WolframLanguageSymbol", {"VersionIntroduced" -> Interval[{10, 10.4}], "VersionsModified" -> ContainsAny[{11}]}]]
Out[2]=

「カール・フリードリヒ・ガウス(Carl Friedrich Gauss)」に因んで名付けられた関数を求める.

In[3]:=
Click for copyable input
EntityList[ EntityClass[ "WolframLanguageSymbol", {"EponymousPeople" -> ContainsAny[{Entity["Person", "CarlFriedrichGauss::4vctc"]}]}]]
Out[3]=

Mathematicaバージョン8から11までに導入されたグラフィックスシンボルを求める.

In[4]:=
Click for copyable input
EntityList[EntityClass["WolframLanguageSymbol", { "FunctionalityAreas" -> ContainsAny[{"GraphicsPrimitiveSymbols"}], "VersionIntroduced" -> Interval[{8, 11}] }]]
Out[4]=

EntityProperty限定子を隠的に定義された実体クラスと組み合せて使い,(全コーパス中で)最もよく使われるシンボルを10個求める.

In[5]:=
Click for copyable input
EntityClass["WolframLanguageSymbol", EntityProperty["WolframLanguageSymbol", "Frequencies", {"Corpus" -> "All"}] -> TakeLargest[10]]
Out[5]=

[+]をクリックして,結果のフォーマットされた隠的実体クラスのコンテンツを見る.

Out[6]=

EntityListを使って実体クラスを構成メンバーに分解する.

In[7]:=
Click for copyable input
EntityClass["WolframLanguageSymbol", EntityProperty["WolframLanguageSymbol", "Frequencies", {"Corpus" -> "All"}] -> TakeLargest[10]]; EntityList[%]
Out[7]=

使用頻度を抽出する.

In[8]:=
Click for copyable input
EntityList[ EntityClass["WolframLanguageSymbol", "VersionIntroduced" -> 11]] // Take[#, 20] &; EntityList[%]; top10 = EntityValue[%, EntityProperty["WolframLanguageSymbol", "Frequencies", {"Corpus" -> "All"}], "EntityAssociation"]
Out[8]=

これらのシンボルの使用頻度の円グラフを作る.

完全なWolfram言語入力を表示する
In[9]:=
Click for copyable input
PieChart[ Append[top10, "others" -> 1 - Total[Values[top10]]], LabelingFunction -> Function[Row[{NumberForm[100 #, {3, 1}], "%"}]], ChartLegends -> Automatic, ChartStyle -> "Rainbow"]
Out[9]=

関連する例

de en es fr ko pt-br ru zh