相关疑难解决方法(0)

Mathematica:如何清除符号的缓存,即Unset pattern-free DownValues

我是一个糟糕的人:有时,当没有人在观看时,我会缓存结果而不包括完整的上下文,如下所示:

f[x_]:=f[x]=x+a;
a=2; f[1];
DownValues[f]

Out[2]= {HoldPattern[f[1]]:>3,HoldPattern[f[x_]]:>(f[x]=x+a)}
Run Code Online (Sandbox Code Playgroud)

这会导致可怕的细微错误,更重要的是,当我更改上下文时需要清除缓存.清除缓存的一种方法是完全Clear符号并重复定义,但这不是一个真正的解决方案.

我真正想要的是一种清除与符号相关的所有无模式DownValues的方法.
为清楚起见,我将把我目前的解决方案作为答案包括在内,但如果两个方面都失败了

  • 它只使用全数字参数清除DownValues
  • 出于美学原因,我想避免使用Block抓住DownValues.

关于如何改进的任何想法ClearCache

wolfram-mathematica

22
推荐指数
3
解决办法
1640
查看次数

结合Word频率数据列表

这似乎应该是一个显而易见的问题,但列表上的教程和文档不会出现.其中许多问题源于我的文本文件的大小(数百MB)以及我试图将它们归结为我的系统可管理的东西.结果,我正在分段工作,现在正试图将结果结合起来.

我有多个单词频率列表(约40个).列表可以通过Import []获取,也可以作为Mathematica中生成的变量获取.每个列表显示如下,并使用Tally []和Sort []命令生成:

{{"the",42216},{"of",24903},{"和",18624},{"n",16850},{"in",
16164},{"de",14930},{ "a",14660},{"to",14175},{"la",7347},{"was",6030},{"l",5981},{"le",5735},<< 51293 >>,{"abattoir",1},{"abattement",1},{"abattagen",1},{"abattage",1},{"abated",1},{"abandonn",1} ,{"abaiss",1},{"aback",1},{"aase",1},{"aaijaut",1},{"aaaah",1},{"aaa",1}}

以下是第二个文件的示例:

{{"the",30419},{"n",20414},{"de",19956},{"of",16262},{"and",
14488},{"to",12726},{ "a",12635},{"in",11141},{"la",10739},{"et",9016},{"les",8675},{"le",7748},<< 101032 >>,{"abattement",1},{"abattagen",1},{"abattage",1},{"abated",1},{"abandonn",1},{"abaiss",1} ,{"aback",1},{"aase",1},{"aaijaut",1},{"aaaah",1},{"aaa",1}}

我想将它们组合起来,以便频率数据聚合:即如果第二个文件有30,419次出现''并且加入第一个文件,它应该返回有72,635次出现(依此类推,因为我在整个文件中移动)采集).

wolfram-mathematica word-frequency

11
推荐指数
4
解决办法
660
查看次数