在我的论文中,我需要进行大量的模拟研究,这些研究都需要很长时间.我的计算机有4个内核,所以我一直想知道是否可以同时在Rstudio中运行两个R脚本,让他们使用两个不同的内核?如果可以做到这一点,我可以节省大量时间,只需让电脑在夜间运行所有这些脚本.
我想使用该write
函数将数据帧写入文件,但是这不起作用,因为data.frame()
它将其创建为列表.
生殖实例:
data <- data.frame(cbind(1:2,3:4))
typeof(data)
data
# X1 X2
#1 1 3
#2 2 4
#> typeof(data)
#[1] "list"
Run Code Online (Sandbox Code Playgroud)
现在当我想用文件写入文件时
write(data,"data.txt")
Run Code Online (Sandbox Code Playgroud)
我收到一个错误说
cat中的错误(列表(...),文件,sep,fill,labels,append):'cat'无法处理参数1(类型'list')
这显然是因为数据是一个列表,但我不明白为什么它是一个列表.我正在运行R 3.1.3
所以,我在R中有以下代码:
y
a <- -0.1
test <- (1/((y+as.numeric(!y))*(a-1)))
test
test^a
-0.9090909^a
Run Code Online (Sandbox Code Playgroud)
给我输出:
> y
[1] 0.00000000 0.06024096 0.00000000 0.01098901 0.00000000 0.00000000
[7] 0.01829268 0.00000000 0.06976744 0.00000000 0.04380665 0.01351351
[13] 0.00000000 0.00000000 0.00000000 0.00000000 0.00310559 0.00000000
[19] 0.00000000 0.00000000 0.09957447 0.00000000 0.03738318 0.00000000
> a <- -0.1
> test <- (1/((y+as.numeric(!y))*(a-1)))
> test
[1] -0.9090909 -15.0909091 -0.9090909 -82.7272727 -0.9090909
[6] -0.9090909 -49.6969697 -0.9090909 -13.0303030 -0.9090909
[11] -20.7523511 -67.2727273 -0.9090909 -0.9090909 -0.9090909
[16] -0.9090909 -292.7272727 -0.9090909 -0.9090909 -0.9090909
[21] -9.1297591 -0.9090909 -24.3181818 …
Run Code Online (Sandbox Code Playgroud) 假设我在 R 中有一个公式对象,类似于
form <- formula(y ~ x1 + x2)
Run Code Online (Sandbox Code Playgroud)
其中 y、x1、x2 是向量,每个向量包括 n 个数字。
有没有办法可以从表单中提取 y 中包含的值?