我有一个字符串向量
c("YSAHEEHHYDK", "HEHISSDYAGK", "TFAHTESHISK", "ISLGEHEGGGK",
"LSSGYDGTSYK", "FGTGTYAGGEK", "VGASTGYSGLK", "TASGVGGFSTK", "SYASDFGSSAK",
"LYSYYSSTESK")
Run Code Online (Sandbox Code Playgroud)
对于每个字符串,我想用“pY”、“pS”或“pT”替换“Y”、“S”或“T”。但我不希望所有替换都在同一个最终字符串中,我希望每个替换生成一个新字符串,例如
“YSAHEEHHYDK”变成
c("pYSAHEEHHYDK",
"YpSAHEEHHYDK",
"YSAHEEHHpYDK")
Run Code Online (Sandbox Code Playgroud) 我有一个包含字母和数字的表格:
xx <- tibble (letter = c (rep ("a", 3), rep ("b", 3), rep ("c", 3)),
number = c (1, 2, 3, 1, 2, 3, 4, 5, 6))
Run Code Online (Sandbox Code Playgroud)
我想首先按“字母”对数据进行分组,然后检查数字列中是否有两个具有相同值的组。这些将是“字母”列中带有字母“a”和“b”的组。
结果看起来像这样
xx <- tibble (letter = c (rep ("a", 3), rep ("b", 3), rep ("c", 3)),
number = c (1, 2, 3, 1, 2, 3, 4, 5, 6),
duplicated = c (rep (TRUE, 6), rep (FALSE, 3)) )
Run Code Online (Sandbox Code Playgroud)
有没有办法在 dplyr 中优雅地做到这一点?
我正在构建一个图,其中每个点的大小和颜色都基于两个单独列中的线性渐变
df1 <- data.frame (x = c(1:10), y = c(1:10), pointSize = 1:10, pointCol = 1:10)
ggplot(df1, aes(x = x, y = y, colour = pointCol, size = pointSize)) + geom_point() +
scale_colour_gradient(low = "steelblue", high = "yellow")
Run Code Online (Sandbox Code Playgroud)
表中编码颜色和点大小的列的最大值为 10。我可以更改渐变大小,使其从 say = 10 变为 20 吗?
我想对数据进行分组,然后排列表格,以便首先显示具有最高值的组。例如,在 mtcars 数据集中,我想按气缸数对汽车进行分组,然后排列表格,以便mpg首先显示平均值最高的组
mtcars %>% group_by (cyl) %>% arrange (desc(mean (mpg)))
Run Code Online (Sandbox Code Playgroud)
这会产生一个错误:
Error: incorrect size (1) at position 1, expecting : 32
Run Code Online (Sandbox Code Playgroud)
我问的原因是,在 group_by() 之后应用时,filter() 应用于整个组,而不是单个行。