我正在使用以下脚本分析大量数据:
M <- c_alignment
c_check <- function(x){
if (x == c_1) {
1
}else{
0
}
}
both_c_check <- function(x){
if (x[res_1] == c_1 && x[res_2] == c_1) {
1
}else{
0
}
}
variance_function <- function(x,y){
sqrt(x*(1-x))*sqrt(y*(1-y))
}
frames_total <- nrow(M)
cols <- ncol(M)
c_vector <- apply(M, 2, max)
freq_vector <- matrix(nrow = sum(c_vector))
co_freq_matrix <- matrix(nrow = sum(c_vector), ncol = sum(c_vector))
insertion <- 0
res_1_insertion <- 0
for (res_1 in 1:cols){
for (c_1 in 1:conf_vector[res_1]){
res_1_insertion <- res_1_insertion …Run Code Online (Sandbox Code Playgroud) 我想首先说我是计算生物物理学家,而不是软件工程师,所以我的编程知识仅限于科学计算(我使用C++,Matlab和R).
我最近被要求从MS Visual C++将一大堆代码(~10,000行)移植到Linux,我在那里开发了一些代码.他们知道我在Linux上写作并且直到将近一年之后才告诉我他们希望它与Windows中的旧代码集成.
说实话,我不知道从哪里开始.我能够将MakeFile放在一起并成功编译,但是我得到了一个分段错误,经过valgrind的调查后,可能与数百个管理不当的内存分配有关.我是否有一个好的开始,不需要我学习MS Visual C++只是为了让它在Linux中运行?任何帮助将不胜感激.谢谢!
编辑:感谢您的帮助到目前为止.我绝对是"真正的"编程的新手,所以我甚至不清楚我应该如何描述我的问题.感谢您的理解并提供了一些很好的起点.
标题相当清楚,但我试图取两个矩阵A和B,并输出一个矩阵C,它具有两个矩阵中的最小元素.
cij = min(aij,bij)
这就是我考虑这样做的方式:
C <- matrix(ncol = ncol(A), nrow = nrow(A), 0)
for (i in 1:ncol(C)) {
Y <- rbind(A[i,], B[i,])
C[i,] <- apply(Y, 2, min)
}
Run Code Online (Sandbox Code Playgroud)
但是,我希望这可以被矢量化,但我想不出怎么做.我没有找到任何东西,如果有人有任何想法,我会非常感激.
谢谢!