我检查了不同的帖子,但仍然无法弄清楚为什么这不起作用:
c=c("HI","NO","YESS")
grep("YES",c,fixed=T)
[1] 3
Run Code Online (Sandbox Code Playgroud)
如果我正在使用fixed = T,为什么当"YES"没有完全匹配时,我仍然会得到结果.我只想要grep -w在bash中使用时完全匹配.
我有一个0s 和1s 的向量,想要识别 s 字符串0被 s 包围的索引1。0如果s之间的s个数1小于或等于5,我想将这些零更改为1s。
这是一个例子:
> x <- c(0,0,0,1,1,1,0,0,0,1,1,0,0,0,0,0,0,1,1,1,1)
Run Code Online (Sandbox Code Playgroud)
在位置7,8,9中,我只有三个零,因此需要将其更改为1。其他零都超过5个,因此不需要更改。
生成的向量应如下所示:
> x_converted <- c(0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0,0,1,1,1,1)
Run Code Online (Sandbox Code Playgroud)
我正在使用for循环和if else语句来执行此操作,但我确信必须有一种更快的方法来执行此操作。
谢谢。
我有一个看起来像这样的矩阵:
a=c(rep(0,5),rep(1,5),rep(2,5))
b=c(rep(1,5),rep(1,5),rep(2,5))
d=rbind(a,b)
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12] [,13] [,14] [,15]
a 0 0 0 0 0 1 1 1 1 1 2 2 2 2 2
b 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2
Run Code Online (Sandbox Code Playgroud)
我想要做的是计算一行中值的变化次数.例如,在第一行,第5列到第6列以及第10列到第11列有2个更改.
我使用一个if语句和一个for循环来比较每个值和一个计数器c来计算发生更改的次数:
m=matrix(NA, nrow = length(d[,1]), ncol = 1)
for (s in 1:length(d[,1])){
c=0
for (i in 1:length(d[1,])){
if (i < length(d[1,])){
if …Run Code Online (Sandbox Code Playgroud) 我有一个融化的矩阵,我想将其绘制为热图,相关系数位于下部矩阵中,P 值位于上部三角形中
> melted_corfinal
Var1 Var2 value
1 iHS iHS 1.00
2 nSL iHS 0.89
3 XP-EHH iHS 0.01
4 PBS iHS 0.00
5 iHS nSL 0.00
6 nSL nSL 1.00
7 XP-EHH nSL 0.01
8 PBS nSL 0.00
9 iHS XP-EHH 0.00
10 nSL XP-EHH 0.00
11 XP-EHH XP-EHH 1.00
12 PBS XP-EHH 0.18
13 iHS PBS 0.90
14 nSL PBS 0.41
15 XP-EHH PBS 0.00
16 PBS PBS 1.00
Run Code Online (Sandbox Code Playgroud)
但是,我找不到一种方法来仅更改上三角矩阵的颜色,同时保留值。我希望它只是白色(背景)。
这是我迄今为止提出的代码:
p <- ggplot(melted_corfinal, aes(Var2, Var1)) +
geom_tile(aes(fill …Run Code Online (Sandbox Code Playgroud) 有没有办法在ggplot阴谋旋转x轴标签和在同一时间更换主题?
如果我这样做,我可以旋转 x 轴标签:
ToothGrowth$dose <- as.factor(ToothGrowth$dose)
ggplot(ToothGrowth, aes(x=dose, y=len)) +
geom_boxplot() +
theme(axis.text.x = element_text(angle = 90, hjust = 1))
Run Code Online (Sandbox Code Playgroud)
但是如果我添加一个主题,旋转将不起作用:
ToothGrowth$dose <- as.factor(ToothGrowth$dose)
ggplot(ToothGrowth, aes(x=dose, y=len)) +
geom_boxplot() +
theme(axis.text.x = element_text(angle = 90, hjust = 1)) +
theme_minimal()
Run Code Online (Sandbox Code Playgroud)
我尝试在theme_minimal()函数中添加旋转,但这也不起作用。
谢谢。
我有一个非常大的布尔向量(即T或F),并且我想简单地能够估计元素之间的 T向量中包含多少个连续的“块” 。F
一个带有3个T元素的这些连续“块”的向量的简单示例:
x <- c(T,T,T,T,F,F,F,F,T,T,T,T,F,T,T)
Run Code Online (Sandbox Code Playgroud)
输出:
1,1,1,1,0,0,0,0,2,2,2,2,0,3,3
Run Code Online (Sandbox Code Playgroud) 我有一个带零和正数的向量.我只想总结零之间的数字.
一个简单的例子:
x <- c(0,0,0,0,0,1,23,24,54,12,1,23,0,0,0,0,1,23,56,76,0,1,13)
Run Code Online (Sandbox Code Playgroud)
也就是说,我要总结的元素1,23,24,54,12,1,23,1,23,56,76和1,13.
因此138,我想要的输出是:
156和14.
我发现这个问题非常相似,但它是在Python上: Python中零之间的列表元素
谢谢.
我正在尝试获取三个不同数据集中每个单元格的最大值。作为一个玩具示例,想象一下这三个数据框:
set.seed(123)
a <- data.frame(matrix(sample(20,10), ncol = 5, nrow = 5))
b <- data.frame(matrix(sample(20,10), ncol = 5, nrow = 5))
c <- data.frame(matrix(sample(20,10), ncol = 5, nrow = 5))
> a
X1 X2 X3 X4 X5
1 15 2 15 2 15
2 19 6 19 6 19
3 14 11 14 11 14
4 3 5 3 5 3
5 10 4 10 4 10
> b
X1 X2 X3 X4 X5
1 14 10 14 10 14
2 …Run Code Online (Sandbox Code Playgroud)