我已经将CSV文件中的数据加载到数据框中.每列代表一个调查问题,所有答案都是五点李克特量表,标签为:("无","低","中","高","非常高").
当我最初读入数据时,R正确地将这些值解释为因子,但不知道排序应该是什么.我想指定值的排序,以便我可以进行一些数值计算.我认为以下代码可行:
X <- read.csv('..')
likerts <- data.frame(apply(X, 2, function(X){factor(X,
levels = c("None", "Low", "Medium", "High", "Very High"),
ordered = T)}))
Run Code Online (Sandbox Code Playgroud)
相反,所有级别数据都转换为字符串.我该怎么做呢?
我在Firefox中使用Selenium IDE在selenese中记录测试套件,我想使用Chrome在命令行上运行这些测试.(我正在运行Mac OS X).
我显然做错了,因为当我尝试这样做时,它会在Firefox中运行.
我下载了OS X的chromedriver和selenium-server-standalone jar文件,并将它们都放在/ usr/local/bin中.我认为以下命令确实需要,但它在Firefox内部而不是Chrome中运行测试.(注意,我正在测试运行的本地应用程序http://localhost:8001).
$ java -Dwebdriver.chrome.driver=/usr/local/bin/chromedriver \
-jar /usr/local/bin/selenium-server-standalone-2.24.1.jar \
-htmlSuite "*chrome" http://localhost:8001 /Users/lorin/selenium/suite.html /Users/lorin//selenium/results.html
Run Code Online (Sandbox Code Playgroud)
输出如下所示:
Jun 19, 2012 4:32:40 PM org.openqa.grid.selenium.GridLauncher main
INFO: Launching a standalone server
16:32:45.880 INFO - Java: Apple Inc. 20.8-b03-424
16:32:45.881 INFO - OS: Mac OS X 10.7.4 x86_64
16:32:45.887 INFO - v2.24.1, with Core v2.24.1. Built from revision 17205
16:32:45.972 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub
16:32:45.973 INFO - Version Jetty/5.1.x
16:32:45.973 INFO - …Run Code Online (Sandbox Code Playgroud) 如何配置Sublime Text 2以便识别名为Makefile.localMakefile的文件,这样我打开此文件时就不必手动执行"Set Syntax:Makefile"了?
我正在尝试在一台机器上使用NIS进行身份验证.我不得不在NIS服务器上更改用户帐户的一个用户ID号(我将用户ID username从500 更改为509以避免与客户端上ID为500的本地用户帐户冲突).问题是它没有在客户端上正确更新.
特别是,如果我这样做ypcat passwd | grep username,我会得到最新的信息:
username:*hidden*:509:509:User Name:/home/username:/bin/bash
Run Code Online (Sandbox Code Playgroud)
但如果我这样做ypmatch username passwd,它说:
username:*hidden*:500:500:User Name:/home/username:/bin/bash
Run Code Online (Sandbox Code Playgroud)
这意味着当用户登录到其中一个客户端时,它具有错误的用户标识,这会导致各种问题.我已经"cd /var/yp; make"在服务器"service ypbind restart"上和客户端上完成了,但这并没有解决问题.有谁知道会导致这种情况以及如何以某种方式强制刷新客户端?(我在客户端和服务器上运行Fedora 8).
我正在使用Python MiniMock库进行单元测试.我想模拟在与我的doctest相同的Python文件中定义的函数.MiniMock可以处理吗?天真的方法失败了:
def foo():
raise ValueError, "Don't call me during testing!"
def bar():
"""
Returns twice the value of foo()
>>> from minimock import mock
>>> mock('foo',returns=5)
>>> bar()
Called foo()
10
"""
return foo() * 2
if __name__ == "__main__":
import doctest
doctest.testmod()
Run Code Online (Sandbox Code Playgroud)
如果我尝试运行此代码,会发生以下情况:
**********************************************************************
File "test.py", line 9, in __main__.bar
Failed example:
bar()
Exception raised:
Traceback (most recent call last):
File "/System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/doctest.py", line 1212, in __run
compileflags, 1) in test.globs
File "<doctest __main__.bar[2]>", line 1, in <module> …Run Code Online (Sandbox Code Playgroud) 是否有一个R函数将数值转换为英文表示?它会像这样工作:
> to.words(5)
[1] "five"
> to.words(23)
[1] "twenty-three"
Run Code Online (Sandbox Code Playgroud) 我最近将一个应用程序拆分为子目录.例如,我有一个"商店"应用程序,我把它分成shop/foo,商店/酒吧,商店/ baz子目录,将每一个视为一个单独的应用程序,所以我的INSTALLED_APPS现在看起来像:
"shop",
"shop.foo",
"shop.bar",
"shop.baz",
...
Run Code Online (Sandbox Code Playgroud)
我希望能够通过执行以下操作在shop/foo/tests.py中运行测试:
python manage.py test shop.foo
Run Code Online (Sandbox Code Playgroud)
但是,如果我这样做,我会收到错误:
ValueError: Test label 'shop.foo' does not refer to a test
Run Code Online (Sandbox Code Playgroud)
另一方面,我可以通过执行以下操作来运行测试:
python manage.py test foo
Run Code Online (Sandbox Code Playgroud)
为什么会发生这种情况,我可以改变什么,以便我可以将测试作为"shop.foo"而不是"foo"运行?
当我在Sublime Text中安装Emmet包时,它会更改ctrl+ 的定义d.我希望ctrl+ d有默认行为,即删除光标前面的字符.我应该填写什么?
下面我定义Emmet包的用户密钥绑定时?
{ "keys": ["ctrl+d"], "command": "???" },
Run Code Online (Sandbox Code Playgroud) 当我处理 Ruby 异常并将其与我构造的异常对象进行比较时,它的计算结果为 false。为什么会这样呢?
举个具体的例子,为什么会打印这样的内容false?
begin
raise "An error happened"
rescue => e
end
err = RuntimeError.new("An error happened")
puts e == err
Run Code Online (Sandbox Code Playgroud) 当我在命令行模式下使用文件名自动完成功能时,如何选择当前选项进行自动完成?
例如,假设我想打开文件~/dev/myproject/foo.c
我首先输入:
:e ~/dtab
我按了几次 Tab 直到看到
:e ~/dev/
接下来我该按什么键让 vim 自动补全其中的目录~/dev/?
如果我点击enter,vim 将打开一个包含目录列表的缓冲区,这不是我想要的。
我可以先点击/然后按 Tab 键,但随后我的路径中出现了一个无害但不美观的双斜杠:
:e ~/dev//tab
我也可以按“m”,然后按 Tab,这样就可以了:
:e ~/dev/mtab
但是如果我不记得下一个目录以“m”开头怎么办?
我如何在上面的例子中告诉vim“dev”是我想要的自动完成选项,然后继续对路径的下一部分进行自动完成?
macos ×2
r ×2
sublimetext2 ×2
command-line ×1
django ×1
exception ×1
linux ×1
mocking ×1
nis ×1
python ×1
ruby ×1
selenium ×1
sublimetext3 ×1
vim ×1