私はRの反復作業に慣れていません。私はウェブサイトで分析を実行しているので、プロセスをスピードアップしたいと考えています。Rの反復処理を高速化できますか?
私は行列を繰り返し、ある閾値(> 0.01)以上の基準データを選び、3つのベクトル、「source、target and corr」にこれらの値を最終的に浸透させる非常に有用なチュートリアルが見つかりましたうまく整理されたデータフレームを作成します。
source=c()
target=c()
corr<-c()
g1<-rownames(adj_mat)[1:dim(adj_mat)[1]]
g2<-g1
for(gene in g1){
for(gen in g2){
if(adj_mat[gene,gen]>0.01){
source<-c(source,gene)
target<-c(target,gen)
corr<-c(corr,adj_mat[gene,gen])
}
}
}
network<-data.frame(source,target,corr)
これは寸法1000年、500の小さな行列のための非常に良いですが、それは寸法10000のものとして、時間のイライラ量をとり、700 ...
マトリックスは、そのファイルから来ています私は「ソースなど」には合わないので、毎回ウェブサイトにアップロードして読むことになります。各新規にアップロードされたファイルが異なるサイズになるので、オブジェクトサイズをマトリックスのサイズに合わせる。
Rでこれを行うより効率的な方法があれば教えてください。
変数「m」とは何ですか? (i in 1:nrow(adj_mat)))と@Paul Hiemstraが指摘したように、preallocateを使うことをお勧めします。例えば。:ソース< - 文字(長さ= nrow(adj_mat)) '。 – sebastianmm
申し訳ありませんが、間違いを訂正しました –