Auto-analyse en Wolfram Language
La base de connaissances de Wolfram contient non seulement des informations sur des entités externes, mais aussi des détails sur Wolfram Language lui-même. Il est possible d'utiliser ces connaissances pour explorer la structure (et l'évolution) du langage. Elles peuvent également faciliter la découverte de fonctionnalités intéressantes. Ici, les classes d'entités implicitement définies sont utilisées pour identifier les symboles de Wolfram Language répondant à certains critères d'intérêt.
Utilisez une classe implicitement définie pour identifier les symboles introduits dans la version 11.
EntityList[
EntityClass["WolframLanguageSymbol", "VersionIntroduced" -> 11]] //
Take[#, 20] &
Extrayez les symboles ajoutés dans la version 10 et modifiés dans la version 11.
EntityList[EntityClass["WolframLanguageSymbol",
{"VersionIntroduced" -> Interval[{10, 10.4}],
"VersionsModified" -> ContainsAny[{11}]}]]
Trouvez les symboles nommés d'après Carl Friedrich Gauss.
EntityList[
EntityClass[
"WolframLanguageSymbol", {"EponymousPeople" ->
ContainsAny[{Entity["Person", "CarlFriedrichGauss::4vctc"]}]}]]
Trouvez les symboles graphiques introduits dans les versions 8 à 11 de Mathematica.
EntityList[EntityClass["WolframLanguageSymbol", {
"FunctionalityAreas" -> ContainsAny[{"GraphicsPrimitiveSymbols"}],
"VersionIntroduced" -> Interval[{8, 11}]
}]]
Trouvez les 10 symboles les plus utilisés (dans tous les corpus) en utilisant un qualificateur EntityProperty combiné avec une classe d'entité implicitement définie.
EntityClass["WolframLanguageSymbol",
EntityProperty["WolframLanguageSymbol",
"Frequencies", {"Corpus" -> "All"}] -> TakeLargest[10]]
Visualisez le contenu de la classe d'entité implicite obtenue et mise en forme en cliquant sur le [+].
Résolvez la classe d'entités en membres constitutifs en utilisant EntityList.
EntityClass["WolframLanguageSymbol",
EntityProperty["WolframLanguageSymbol",
"Frequencies", {"Corpus" -> "All"}] -> TakeLargest[10]];
EntityList[%]
Extrayez les fréquences d'utilisation.
EntityList[
EntityClass["WolframLanguageSymbol", "VersionIntroduced" -> 11]] //
Take[#, 20] &;
EntityList[%];
top10 = EntityValue[%,
EntityProperty["WolframLanguageSymbol",
"Frequencies", {"Corpus" -> "All"}], "EntityAssociation"]
Créez un diagramme en camembert des fréquences d'utilisation de ces symboles.