在R中改进简单嵌套的循环效率

时间:2018-01-29 03:36:51

标签: r dataframe dplyr apply purrr

我正在运行排列以获得p值。我有两个数据框,SELECT [COUNTRY_CODE_NEW], CASE WHEN SUBSTRING([COUNTRY_CODE_NEW], 6,2) = '16' AND [COUNTRY_CODE_NEW] IS NOT NULL THEN 'ALBANIA' END 'COUNTRY' FROM [dbo].[COUNTRY_NEW] df1;这是他们的样子:

df2

我有一个嵌套的for循环,它遍历两个五分位数的每个组合(例如SizeQuintile 1,ExpressionQuintile 1;然后是SizeQuintile 1,ExpressionQuintile 2等等)并在三个{{1}之一中提取一个值}列。

例如,我将在df1中提取与SizeQuintile1和Expression Quintile1相对应的三个df1 <- data.frame(X1 = c("Gene1","Gene2","Gene3", "Gene4", "Gene5","Gene6"), Type1 = runif(5), Type2 = runif(6), Type3 = runif(6), SizeQuintile = c(1,2,1,5,5,1), ExpressionQuintile = c(1,1,1,5,5,1)) df2 <- data.frame(X1 = c("Gene1","Gene2","Gene3"), Type1 = runif(3), Type2 = runif(3), Type3 = runif(3), SizeQuintile = c(1,2,1), ExpressionQuintile = c(1,1,1)) 值,并将这些值与df2中的两个Type值进行比较。

然后我将这些值附加到两个单独的向量TypeType,然后再比较它们的中位数。由于我正在进行排列,我希望这样做10,000次。

vector1

代码有效,但速度很慢。有没有办法在R中更有效地做到这一点?

0 个答案:

没有答案