试图理解MATLAB语法:我明白了
(0:3)
Run Code Online (Sandbox Code Playgroud)
是一个行向量,'(forward-quote)运算符是transpose,所以
(0:3)'
Run Code Online (Sandbox Code Playgroud)
是一个列向量.我也在.'一些文件中看到,这些也产生了列向量,所以
(0:3).'
Run Code Online (Sandbox Code Playgroud)
产生与...相同的结果(0:3).
'和之间有什么区别.'?我没有在MATLAB文档中找到任何帮助我理解这一点的内容.
(注意,这个问题是关于语法,主要是,不是之间的区别transpose和ctranspose,因为如果你不知道这'是一个.'是其他的,比回答的问题transpose相对ctranspose是没有帮助回答的问题.与'.在许多MATLAB示例和教程中,'被transpose明确地和不准确地呈现为,并且这一事实导致了用户第一次遇到的问题.'.)
我即将长途跋涉到无法访问互联网的偏远地区,我想完成一些lisp编程.我认为这可能是明智的
quickload为本地副本的包因为对我来说,有更好的东西而不需要它然后需要它,而不是在我外出时无法通过任何方式连接到互联网.
我很感激有关如何做这两件事的建议,或者在哪里查明可以指导我如何做这两件事的文档.
我的硬盘上有足够的空间来存放整个东西的许多副本(磁盘空间稀少的时代早已不复存在).
在这个Overtone的live-coding-in-clojure演示视频中,作者通过内联文档和提醒下拉列表展示了emacs.在54秒时,他甚至强调了这一事实,但并没有放弃关于如何启用它的必要暗示.
这是我理想的emacs设置(我使用的是nrepl和leiningen)中最大缺失的东西,也是唯一吸引我使用Intellij和Eclipse等可怕的面向鼠标的工具的东西.我急需这个设施!
我不知道要安装什么melpa软件包来设置它,我不知道我会称之为聪明的单字名称,所以我不知道如何搜索它."Emacs中的Clojure智能感知"与我能够进入搜索术语的距离非常接近,但它找不到任何有用的东西.
考虑下面的(最小)leiningen项目
./project.clj:
(defproject repro "0.1.0-SNAPSHOT"
:dependencies [[org.clojure/clojure "1.5.1"]
[midje "1.5.1"]])
Run Code Online (Sandbox Code Playgroud)
./repro/src/repro/core.clj:
(ns repro.core)
Run Code Online (Sandbox Code Playgroud)
./repro/test/repro/core_test.clj:
(ns repro.core-test
(:require [repro.core :refer :all]
[midje.sweet :refer :all]))
(facts "about numbers"
(fact "trivial"
1 => 1) )
Run Code Online (Sandbox Code Playgroud)
如果我安装了leiningen midje插件,它将在命令提示符下运行,如下所示:
lein clean
lein midje
~~> All checks (1) succeeded.
Run Code Online (Sandbox Code Playgroud)
但是,如果将leiningen项目导入Intellij 12.1.5 Community Edition,则会出现大量堆栈跟踪:
Exception in thread "main" java.lang.ExceptionInInitializerError
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:270)
...
at java.lang.reflect.Method.invoke(Method.java:606)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)
Caused by: java.lang.NullPointerException
at java.util.concurrent.ConcurrentHashMap.hash(ConcurrentHashMap.java:333)
at java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:988)
at clojure.lang.Namespace.find(Namespace.java:188)
at clojure.core$find_ns.invoke(core.clj:3728)
at clojure.core$the_ns.invoke(core.clj:3760)
at clojure.core$ns_name.invoke(core.clj:3767)
at midje.Bootstrap$bootstrap.invoke(Bootstrap.clj:8)
at …Run Code Online (Sandbox Code Playgroud) 我正在阅读Gigamonkey(Peter Seibel的)Practical Common Lisp,并在Macros章节中关于DO的部分中遇到了以下声明:
与LET中的变量定义一样,如果省略init-form,则变量绑定到NIL.与LET一样,您可以使用普通变量名作为仅包含名称的列表的简写.
我不知道他的意思是"使用普通变量作为缩写,只包含名称的列表",即第二句.第一句是在LET的Common-Lisp Hyperspec中备份的,通过一个简单的例子(let (n) n) ~~> NIL,但我找不到与第二句相对应的任何内容.事实上,像是(let n n)一个SBCL编译器.
这是什么意思?这个用法的最小例子是什么?
我正试图在Jupyter笔记本中显示AI-Gym演示.我获得了Atari演示的良好结果Breakout-v0以及购物车极点演示的难度错误消息CartPole-v0.两者在笔记本电脑外都很好用.以下是最小的细节:
在控制台:
$ pip install gym[atari] &> /dev/null
$ /anaconda3/bin/python3
Python 3.6.3 |Anaconda, Inc.| (default, Oct 6 2017, 12:04:38)
[GCC 4.2.1 Compatible Clang 4.0.1 (tags/RELEASE_401/final)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import gym
>>> env = gym.make('Breakout-v0')
>>> env.reset()
>>> env.render()
Run Code Online (Sandbox Code Playgroud)
结果:
现在,同样使用cart-pole,在一个新的Python会话中:
$ pip install gym &> /dev/null
$ /anaconda3/bin/python3
Python 3.6.3 |Anaconda, Inc.| (default, Oct 6 2017, 12:04:38)
[GCC 4.2.1 Compatible Clang 4.0.1 (tags/RELEASE_401/final)] on darwin
Type …Run Code Online (Sandbox Code Playgroud) 我使用 gnu emacs 23.3.1 在 Windows 7 64 位上创建了一个普通文本文件。我可以使用其他程序(例如 LinqPad)编辑该文件(该文件恰好是 linqpad 脚本,扩展名 .linq)。一切都很好,直到我在文件中放入一个 Unicode 字符,例如希腊字母 \xce\xbb (lambda)。我可以在 emacs 中输入该字母并且它显示正确。但是emacs拒绝保存文件,报如下错误
\n\nFailure in loading charset map: 8859-7\nRun Code Online (Sandbox Code Playgroud)\n\n如果我在 LinqPad 中输入 \xce\xbb,emacs 将读取并显示它们,但不会保存文件。
\n\n我刚刚注意到 Notepad++ 对这个文件有其他意想不到的行为:它不显示 \xce\xbb\'s,而是显示成对的奇怪字符,例如 \xc3\x8e\xc2\xbb。这符合 unicode 字符成对存储的直觉(双关语)。所以看起来这是一种模棱两可的情况(在文本文件中存储 unicode),但看起来 linqPad 和 Visual Studio 也“做了显而易见的事情”。
\n\n我想使用 emacs,因为它是我拥有的唯一可以重排注释行序列的程序(// 之后的行,使用 Alt-Q 重排它们),并且我想在注释中使用希腊字符,因为我\' m 描述一个数学程序。
\n\n我将不胜感激您的建议和答案。
\n\n更新:其他问题中的一些建议说尝试 Mx describe-char,也绑定到 Cx = ;这两个都给了我与上面相同的失败消息,所以它们在正确的轨道上,只是没有答案。
\n我正在查看Underscore.js库的源代码,特别是对于map方法(在该页面的第85行,并在此处复制):
_.map = function(obj, iterator, context) {
var results = [];
if (obj == null) return results;
if (nativeMap && obj.map === nativeMap) return obj.map(iterator, context);
each(obj, function(value, index, list) {
results[results.length] = iterator.call(context, value, index, list);
});
if (obj.length === +obj.length) results.length = obj.length;
return results;
};
Run Code Online (Sandbox Code Playgroud)
以下行完全直截了当
if (obj.length === +obj.length) results.length = obj.length;
Run Code Online (Sandbox Code Playgroud)
现在,我读到这意味着"如果对象长度不是负数..."
,如果我的解释是正确的,则暗示它可能是!
所以,亲爱的专家们,对于什么样的物体可能
obj.length === +obj.length
Run Code Online (Sandbox Code Playgroud)
是false吗?我的理解===意味着它可以返回,false如果类型obj.length不匹配的类型+obj.length,但在这里我的知识不足.什么样的事情可以+对可能的事情做些obj.length …
我一直在努力获得编号的细胞框架标签,遵循这些其他答案的伟大建议
而我几乎就在那里.我想在Creative/Pastel颜色样式表中为节样式添加节号.我创建了一个新笔记本(这是我的公共Dropbox上的副本)
http://dl.dropbox.com/u/1997638/CellFrameMargins.nb
转到"格式"菜单,选择"样式表\ Creative\PastelColor",然后选择"格式""编辑样式表","选择样式:部分",然后单击样式表编辑对话框顶部的Creative\Pastelcolor.nb .
这打开了另一个样式表编辑器,然后我转到第四个项目"标题和节单元格的样式",然后是"节"中的第二个项目.将鼠标十字准线放在那里然后单击,然后选择"单元格"菜单,"显示表达式"项,其中显示以下表达式:
Cell[StyleData["Section"],
CellFrame->{{0, 0}, {1, 3}},
CellFrameColor->RGBColor[1., 0.819608, 0.658824],
FontFamily->"Helvetica",
FontSize->18,
FontWeight->"Bold",
FontColor->RGBColor[0.882353, 0.419608, 0.0784314],
Background->RGBColor[1., 0.886275, 0.741176]]
Run Code Online (Sandbox Code Playgroud)
大!显示所有细节,或者我想.特别是,CellFrame项目为我{{0, 0}, {1, 3}}提供了使用Section样式排列我的单元格框架标签所需的信息.好的,回到我的笔记本的steylsheet编辑器对话框,并按照上述答案,我输入
Cell[
StyleData["Section"],
CellFrameLabelMargins -> 0,
CellFrameLabels-> { {
Cell[
TextData[{ "§", CounterBox["Section"], ": " }],
"SectionLabel",
CellFrame -> {{0, 0}, {1, 3}},
CellFrameMargins -> 4
] (* left label *),
Inherited (* right label *) },
{Inherited (* bottom label *),
Inherited (* top label *) } } …Run Code Online (Sandbox Code Playgroud) 我在let块中做了很多计算,返回包含数据的哈希映射.以下是一个不那么简单的例子:
(def ground-truth
(let [n 201
t1 2.0
linspace (fn [a b n] (let [d (/ (- b a) (dec n))]
(map (fn [x] (+ a (* x d))) (range n))))
times (vec (linspace 0.0, t1, n))
wavelength 1
wavespeed 1
f (* (/ wavespeed wavelength) 2 Math/PI)
dt (- (get times 1) (get times 0))
amplitude 5.0
ground-level 10.0
h-true (mapv #(+ ground-level
(* amplitude (Math/sin (* f %))))
times)
h-dot-true (mapv #(* amplitude f (Math/cos (* …Run Code Online (Sandbox Code Playgroud) clojure ×3
common-lisp ×2
emacs ×2
autocomplete ×1
dry ×1
intellisense ×1
javascript ×1
jupyter ×1
la-clojure ×1
leiningen ×1
linqpad ×1
lisp ×1
matlab ×1
matplotlib ×1
midje ×1
notepad++ ×1
openai-gym ×1
python ×1
quicklisp ×1
unicode ×1