我正在尝试从应用程序模拟器终端执行此命令(您可以在谷歌播放中找到它)在这个应用程序中我写su并按enter,所以写道:
screenrecord --time-limit 10 /sdcard/MyVideo.mp4
然后再次按下enter并使用android kitkat的新功能开始录制屏幕.
所以,我尝试使用以下方法从java执行相同的代码:
Process su = Runtime.getRuntime().exec("su");
Process execute = Runtime.getRuntime().exec("screenrecord --time-limit 10 /sdcard/MyVideo.mp4");
Run Code Online (Sandbox Code Playgroud)
但是不起作用,因为没有创建文件.显然我在安装了android kitkat的root设备上运行.问题出在哪儿?我怎么解决?因为从终端模拟器工作和Java不?
当开发R所有R源文件中的包放在子目录中时R/,所有编译的代码都放在子目录中src/.
我想在这些文件夹中添加一些组织到文件,而不是将所有内容都转储到顶层.例如,假设我假设开发了一个客户端 - 服务器应用程序.从逻辑上讲,我想组织我的所有客户端R源文件R/client/和我的所有服务器R源文件R/server/.
在开发包时是否可以在子文件夹中组织代码,如果是,如何?在写作R附加手册没有提供任何指引,也没有 R CMD build检测到存储在子文件夹下的文件R/.
我正在尝试使用该igraph包来绘制(稀疏)加权图.我目前有一个邻接矩阵,但无法获得graph.adjacency识别边权重的功能.
考虑以下随机对称矩阵:
m <- read.table(row.names=1, header=TRUE, text=
" A B C D E F
A 0.00000000 0.0000000 0.0000000 0.0000000 0.05119703 1.3431599
B 0.00000000 0.0000000 -0.6088082 0.4016954 0.00000000 0.6132168
C 0.00000000 -0.6088082 0.0000000 0.0000000 -0.63295415 0.0000000
D 0.00000000 0.4016954 0.0000000 0.0000000 -0.29831267 0.0000000
E 0.05119703 0.0000000 -0.6329541 -0.2983127 0.00000000 0.1562458
F 1.34315990 0.6132168 0.0000000 0.0000000 0.15624584 0.0000000")
m <- as.matrix(m)
Run Code Online (Sandbox Code Playgroud)
为了绘图,首先我必须将这个邻接矩阵变为正确的igraph格式.这应该是相对简单的graph.adjacency.根据我阅读的文档graph.adjacency,我应该做以下事情:
library(igraph)
ig <- graph.adjacency(m, mode="undirected", weighted=TRUE)
Run Code Online (Sandbox Code Playgroud)
但是,它无法识别边缘权重:
str(ig)
# IGRAPH …Run Code Online (Sandbox Code Playgroud) 我有一个data.table包含多年变量的变量,即:
> dt <- data.table(id=1:3, A_2011=rnorm(3), A_2012=rnorm(3),
B_2011=rnorm(3), B_2012=rnorm(3),
C_2011=rnorm(3), C_2012=rnorm(3))
> dt
id A_2011 A_2012 B_2011 B_2012 C_2011 C_2012
1: 1 -0.8262134 0.832013744 -2.320136 0.1275409 -0.1344309 0.7360329
2: 2 0.9350433 0.279966534 -0.725613 0.2514631 1.0246772 -0.2009985
3: 3 1.1520396 -0.005775964 1.376447 -1.2826486 -0.8941282 0.7513872
Run Code Online (Sandbox Code Playgroud)
我希望按年将这个表融化为变量组,即:
> dtLong <- data.table(id=rep(dt[,id], 2), year=c(rep(2011, 3), rep(2012, 3)),
A=c(dt[,A_2011], dt[,A_2012]),
B=c(dt[,B_2011], dt[,B_2012]),
C=c(dt[,C_2011], dt[,C_2012]))
> dtLong
id year A B C
1: 1 2011 -0.826213405 -2.3201355 -0.1344309
2: 2 2011 0.935043336 -0.7256130 …Run Code Online (Sandbox Code Playgroud) 我正在开发一些功能Rcpp上进行操作big.matrix,从对象bigmemory包.这些对象Rcpp作为SEXP对象传递给对象,然后我必须将其转换为对象XPtr<BigMatrix>,然后转换为MatrixAccessor对象以访问矩阵的元素.
例如,如果我想实现一个得到对角线的函数:
#include <Rcpp.h>
using namespace Rcpp;
// [[Rcpp::depends(BH, bigmemory)
#include <bigmemory/MatrixAccessor.hpp>
#include <numeric>
// [[Rcpp::export]]
NumericVector GetDiag(SEXP pmat) {
XPtr<BigMatrix> xpMat(pMat); // allows you to access attributes
MatrixAccessor<double> mat(*xpMat); // allows you to access matrix elements
NumericVector diag(xpMat->nrow()); // Assume matrix is square
for (int i = 0; i < xpMat->nrow(); i++) {
diag[i] = mat[i][i];
}
return diag;
}
Run Code Online (Sandbox Code Playgroud)
如果big.matrixR中的对象充满双打,则此功能可以很好地工作.
但是,如果在整数矩阵(例如diag(as.big.matrix(matrix(1:9, …
我试图awk使用该parallel命令作为shell脚本处理所有文本文件,但无法将其输出到另一个文件
如果我尝试:
seq 10 | parallel awk \''{ if ( $5 > 0.4 ) print $2}'\' file{}.txt > file{}.out
Run Code Online (Sandbox Code Playgroud)
它输出到文件file{}.out,而不是file1.out,file2.out等等.
教程和手册页也建议我可以使用--files,但它只是打印到stdout:
seq 10 | parallel awk \''{ if ( $5 > 0.4 ) print $2}'\' file{}.txt --files file{}.out
Run Code Online (Sandbox Code Playgroud) 我想知道是否可以使用其中一个并行处理后端(可能不是)R.我尝试了一些谷歌搜索,没有任何结果.
我目前遇到的一般问题:
load理想情况下,我可以从交互式会话中调度命令,而不必等待它返回(所以我可以在等待渲染时继续做其他事情).这是可能的,还是这是一厢情愿的想法?
昨晚回答这个问题,我花了一个小时的时间试图找到一个没有data.frame在for循环中成长的解决方案,没有任何成功,所以我很好奇是否有更好的方法来解决这个问题.
问题的一般情况归结为:
data.framesdata.frame可以在另一个中具有0个或更多匹配条目.data.frames 中的多个列对于一个具体的例子,我将使用类似的数据来链接问题:
genes <- data.frame(gene = letters[1:5],
chromosome = c(2,1,2,1,3),
start = c(100, 100, 500, 350, 321),
end = c(200, 200, 600, 400, 567))
markers <- data.frame(marker = 1:10,
chromosome = c(1, 1, 2, 2, 1, 3, 4, 3, 1, 2),
position = c(105, 300, 96, 206, 150, 400, 25, 300, 120, 700))
Run Code Online (Sandbox Code Playgroud)
我们的复杂匹配功能:
# matching criteria, applies to a single entry from each data.frame …Run Code Online (Sandbox Code Playgroud) 每当我尝试安装新软件包时,我都会收到此错误:
source("http://bioconductor.org/biocLite.R")
Warning in install.packages :
package ‘BiocInstaller’ is not available (for R version 3.0.2 RC)
Installing package into ‘/home/hd-master/R/x86_64-unknown-linux-gnu-library/3.0’
(as ‘lib’ is unspecified)
trying URL 'http://www.bioconductor.org/packages/2.13/bioc/src/contrib/BiocInstaller_1.12.0.tar.gz'
Content type 'application/x-gzip' length 13509 bytes (13 Kb)
opened URL
==================================================
downloaded 13 Kb
Error in library(BiocInstaller) :
there is no package called 'BiocInstaller'
Execution halted
Run Code Online (Sandbox Code Playgroud) 运行以下代码给我一个NaN:
library(KernSmooth)
x <- c(5.84155992364115, 1.55292112974119, 0.0349665318792623, 3.93053647398094,
3.42790577684633, 2.9715553006801, 0.837108410045353, 2.872476865277,
3.89232548092257, 0.206399650539628)
y <- c(0.141415317472329, 1.34799648955049, 0.0297566221758204,
-0.966736679061812, 0.246306732122746, 0.557982376254723,
0.740542828791083, 0.162336127802977, -0.428804158514744,
0.691280978689863)
locpoly(x, y, bandwidth = 0.4821232, gridsize = 12, degree = 1)[['y']]
Run Code Online (Sandbox Code Playgroud)
我明白了
[1] 0.3030137 0.6456624 0.9530586 1.1121106 0.8120947 0.4441603
[7] 0.1425592 -0.3600028 -0.7840411 -1.0517612 -1.2690134 NaN
Run Code Online (Sandbox Code Playgroud)
在另一台计算机上,我得到相同的,除了我-0.7270521而不是NaN.我猜大多数人也会得到这个.所以问题是如何修复破碎的系统?这与我的LAPACK或LIBBLAS有关吗?
请注意,上面提到的两台计算机都使用Ubuntu.给出了NaN使用Ubuntu 13.10的那个,给出一个数字的是12.04.
编辑:
我的新怀疑是它是一个浮点计算问题:局部多项式回归只是一个加权线性回归,其中权重越大,点越远离评估点,在这种情况下为5.84.应该注意带宽很小,所以首先想到的是带宽内没有点.然而,locpoly使用高斯核,因此所有点都具有严格的正权重.我的猜测是权重很小,但是舍入或浮点计算可能是个问题.我不知道如何解决这个问题.
r ×7
data.table ×2
android ×1
asynchronous ×1
bash ×1
bioconductor ×1
blas ×1
gnu-parallel ×1
igraph ×1
java ×1
lapack ×1
merge ×1
package ×1
rcpp ×1
reshape ×1
reshape2 ×1
rstudio ×1
shell ×1
ubuntu ×1
xml ×1