相关疑难解决方法(0)

在Mathematica中,@@@是什么意思?

我一直在解决项目Euler的问题,其他人发布的一些解决方案使用三重标志,即'@@@'.在v7的帮助浏览器中,我找到了@@的条目(表示它是'Apply'的中缀版本),但没有@@@的条目.这是什么意思?

编辑:这是一个例子,我认为我可以发布而不违反Project Euler的精神:

bloc[n_, f_][t_] := {f @@@ #, #~Tr~f} & /@ Join @@ Partition[t, {n, n}, 1];
Run Code Online (Sandbox Code Playgroud)

wolfram-mathematica

16
推荐指数
3
解决办法
8745
查看次数

如何使用Mathematica中的函数编程减去列表中的特定元素?

我有以下格式的日期和值列表:

{{{dateInfo1},value1},{{dateInfo2},value2},...,{{dateInfoN},valueN}}
Run Code Online (Sandbox Code Playgroud)

有一些实际的日期和价值观:

{{{1971, 1, 31, 0, 0, 0.}, 1.0118}, {{1971, 2, 28, 0, 0, 0}, 1.0075},
 ..., {{2010, 5, 31, 0, 0, 0.}, 1.0403}}
Run Code Online (Sandbox Code Playgroud)

对于那些好奇的人来说,它是从FRED数据库中提取的美国与CAD $值的列表.

我想简单地从值2中减去value1,然后创建一个包含以下形式的数据的新列表:

 {{{dateInfo1},0},{{dateInfo2},change1},...,{{dateInfoN},changeN-1}}
Run Code Online (Sandbox Code Playgroud)

(更改1为value2-value1)

我知道必须有一个相对简单的方法来使用函数式编程,而不是使用索引变量和计数的Do或While以及所有那些废话.我想要实现的方法必须相对健壮,因为我会自动从具有相同格式但不同时间间隔的源中提取数据集.如果我不必指定ListPlot日期间隔(如果我从列表中剥离dateInfo会发生这种情况),那么重绘就会容易得多.

我熟悉文档中心和非编程Mathematica功能.我一直在学习使用Mathematica进行编程,并且真的希望将这种能力扩展到函数式编程中,但是发现这个主题的大部分资源有点太难了.我觉得自己正处于学习曲线中的那个驼峰,即将点击到位,但是现在我正在努力.至少如果你有一个很好的函数式编程源,我会非常乐意调查这些!任何帮助深表感谢!对不起,如果是TMI,但我相信很多人都有同样的感受.

functional-programming wolfram-mathematica date list

6
推荐指数
1
解决办法
1217
查看次数