我用以下代码生成了 ggplot:
a = rnorm(10000, 0, 0.8)
b = rnorm(10000, 0, 0.8)
#Function to generate correlated vectors
complement <- function(y, rho, x) {
if (missing(x)) x <- rnorm(length(y))
y.perp <- residuals(lm(x ~ y))
rho * sd(y.perp) * y + y.perp * sd(y) * sqrt(1 - rho^2)
}
b = complement(b, 0.9, a)
data = as.data.frame(cbind(a, b, a-b))
blues = adjustcolor(c("white", "dodgerblue3"), alpha=0.4)
blues2 = adjustcolor(c("dodgerblue3", "white"), alpha=0.4)
g <- rasterGrob(t(blues), width=unit(1,"npc"), height = unit(1,"npc"),
interpolate = T)
g2 <- rasterGrob(t(blues2), …Run Code Online (Sandbox Code Playgroud) 我具有%info以下结构的存储的多维哈希():
$info{$os}{$id}=$length;
foreach $os (keys %info){
foreach $id (keys %{$info{$os}}){
print "$os $id => " . $info{$os}{$id} ."\n" if (keys %info > 100);
}
}
Run Code Online (Sandbox Code Playgroud)
这样,我可以读取哈希并仅打印$os出现次数超过100 的哈希值,但是现在我只想打印$id具有最高$ length(即值)的值。因此,我想按值对散列进行排序并仅打印$os并$id具有最高值。
有什么帮助吗?
我有一个矩阵列表,list1其结构如下:
$ENSLAFT00000000003
start end
[1,] 360 360
[2,] 394 394
$ENSLAFT00000000011
start end
[1,] 15 15
$ENSLAFT00000000020
start end
[1,] 45 45
$ENSLAFT00000000023
start end
$ENSLAFT00000000024
start end
[1,] 13 13
[2,] 369 369
[3,] 602 602
[4,] 775 775
[5,] 983 983
[6,] 1200 1200
[7,] 1491 1491
Run Code Online (Sandbox Code Playgroud)
有些项目是空的,但我想将此列表转换为具有两列和以下结构的 data.frame:
ID pos
ENSLAFT00000000003 360
ENSLAFT00000000003 394
ENSLAFT00000000011 15
ENSLAFT00000000020 45
ENSLAFT00000000024 13
ENSLAFT00000000024 369
ENSLAFT00000000024 602
ENSLAFT00000000024 775
ENSLAFT00000000024 983
ENSLAFT00000000024 1200
ENSLAFT00000000024 1491
Run Code Online (Sandbox Code Playgroud)
ENSLAFT00000000023 在输出中被省略,因为它在初始列表中是一个空矩阵。
我可以通过使用以下方法获得所需的结构,但不保留行名身份: …
因此,我有一个字符串代表折叠RNA的二级结构,例如:
"....(((((((((...((...(((((((((((..((.(.......))))))))..))))..)))....."
Run Code Online (Sandbox Code Playgroud)
我的目标是摆脱字符串极端中的这些点,以便获得:
"(((((((((...((...(((((((((((..((.(.......))))))))..))))..)))"
Run Code Online (Sandbox Code Playgroud)
我一直在尝试通过使用gsub函数,如:
gsub("\\.+\\(", "", string)
Run Code Online (Sandbox Code Playgroud)
首先,以及:
gsub("\\)\\.+", "", string)
Run Code Online (Sandbox Code Playgroud)
最后
但是此命令的输出为:
"(((((((((((((((((((((((((.......))))))))..))))..)))....."
Run Code Online (Sandbox Code Playgroud)
和:
"....(((((((((...((...(((((((((((..((.(.......)))))))))))))))"
Run Code Online (Sandbox Code Playgroud)
基本上,我不希望除去中间的点,仅除去开头和末尾的中间点。
有人知道用R解决它的好方法吗?
谢谢
我需要一些帮助:
我有文件1:
ID
100
102
103
104
108
109
112
.
.
.
Run Code Online (Sandbox Code Playgroud)
和file2:
ID [] p1 p2
100 2.5 3.0 2.0
101 2.0 4.0 3.0
102 2.6 4.0 2.5
103 2.3 2.0 NA
104 2.3 2.0 2.0
105 3.5 2.8 2.0
106 1.7 NA 3.2
107 5.0 4.0 4.0
108 3.2 2.0 4.0
109 2.9 1.0 1.5
110 5.0 NA NA
111 2.9 4.0 4.0
112 3.1 2.5 2.0
.
.
.
Run Code Online (Sandbox Code Playgroud)
我想将这两个文件粘贴到file3中,如下所示:
ID [] p1 p2
100 2.5 …Run Code Online (Sandbox Code Playgroud)