如何将颜色的十六进制表示转换为其对应的名称?
例如,请考虑以下颜色:
rainbow(4)
# "#FF0000FF" "#80FF00FF" "#00FFFFFF" "#8000FFFF"
Run Code Online (Sandbox Code Playgroud)
它们的名称是什么(希望每个代码都存在名称)?
我发现了这个功能,col2rgb()但它不能满足我的需求.
题
有没有简单的解决方案,以可视化的配对比较及其p.values(或只是.,*,**,***在内置的箱线图)ggplot?
一个已经内置的功能(或方便的东西)会很棒!
下面是一个可以工作的例子..
虚拟数据
require(ggplot2)
set.seed(11)
n=15
mu=1.2
d = data.frame(y=c(rnorm(n), rnorm(n), rnorm(n,mu), rnorm(n,mu)),x=rep(LETTERS[1:4],each=n))
Run Code Online (Sandbox Code Playgroud)
图形
ggplot(d, aes(y=y, x=x)) + geom_boxplot()
Run Code Online (Sandbox Code Playgroud)
统计分析
m = aov(data=d, y~x)
anova(m)
# Analysis of Variance Table
# Response: y
# Df Sum Sq Mean Sq F value Pr(>F)
# x 3 34.074 11.358 16.558 8.021e-08 ***
# Residuals 56 38.414 0.686
TukeyHSD(m)$x
diff lwr upr p adj
B-A 0.1989620 -0.6018277 0.9997517 9.123300e-01
C-A 1.3858613 …Run Code Online (Sandbox Code Playgroud) 我有一个元素列表,我想要一个对象,它给了我所有可能的方法将这些元素分成给定数量的相同大小的组.
例如,这是我的清单:
MyElements <- c(1,2,3,4)
Run Code Online (Sandbox Code Playgroud)
我希望所有可能的组合将它们分成两组:
nb.groups <- 2
Run Code Online (Sandbox Code Playgroud)
答案可能是这样的:
[[1]]
[1] 1,2
[2] 3,4
[[2]]
[1] 1,3
[2] 2,4
[[3]]
[1] 2,3
[2] 1,4
Run Code Online (Sandbox Code Playgroud)
我想避免重复那种:
[[1]]
[1] 1,2
[2] 3,4
[[2]]
[1] 3,4
[2] 1,2
Run Code Online (Sandbox Code Playgroud)
非常感谢 !
谢谢你的回答.我想我应该给你更多关于我想要实现的信息.
列表(或矢量,因为显然MyElements是一个向量)实际上是个人的ID号.我想要一个列出所有可能的方法,将这些个体分成所需数量的组,这些组都具有相同的大小.
如果我没有弄错的话,目前唯一可行的解决办法就是朱巴所谓的暴力和肮脏的解决方案.但正如朱巴所说,它很快(为了我的目的太快了!)无法使用.
再次感谢
这是我当前的脚本和输出:
ggplot(data.and.factors.prov,aes(x=assumptions,y=FP,
colour=factor(Design.Complexity))) +
stat_summary(fun.data=mean_cl_normal,position=position_dodge(width=0.5)) +
geom_blank() + scale_colour_manual(values=1:7,name='Design Complexity') +
coord_flip()
Run Code Online (Sandbox Code Playgroud)

如何(水平)条形(从FP = 0开始并在点位置结束)而不是点?(我不想丢失错误栏)
我想给你我的data.and.factors.prov data.table,但它太大了,无法发布!如果您需要一个可重复的示例,请告诉我如何为您提供数据集?
我执行了MCMCglmm(MCMCglmm封装)。这是此模型的摘要
Iterations = 3001:12991
Thinning interval = 10
Sample size = 1000
DIC: 211.0108
G-structure: ~Region
post.mean l-95% CI u-95% CI eff.samp
Region 0.2164 5.163e-17 0.358 1000
R-structure: ~units
post.mean l-95% CI u-95% CI eff.samp
units 0.5529 0.1808 1.045 449.3
Location effects: Abondance ~ Human_impact/Fish.sp
post.mean l-95% CI u-95% CI eff.samp pMCMC
(Intercept) 1.335628 0.780363 1.907249 642.4 0.004 **
Human_impact 0.005781 -0.294084 0.347743 876.6 0.914
Human_impact:Fish.spA. perideraion -0.782846 -1.158798 -0.399131 649.9 <0.001 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ …Run Code Online (Sandbox Code Playgroud) 这是我目前正在做的事情:
a = trues(100)
for i in 1:length(a)
a[i] = rand()>0.5 ? true : false
end
Run Code Online (Sandbox Code Playgroud)
有更好(更快)的解决方案吗?
在R中执行多个逻辑比较的最快方法是什么?
考虑例如矢量 x
set.seed(14)
x = sample(LETTERS[1:4], size=10, replace=TRUE)
Run Code Online (Sandbox Code Playgroud)
我想测试每个条目x是"A"还是"B"(而不是其他任何东西).以下作品
x == "A" | x == "B"
[1] TRUE FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE TRUE
Run Code Online (Sandbox Code Playgroud)
上面的代码在整个向量的长度上循环三次.R中是否有一种方法只循环一次并测试每个项目是否满足一个或另一个条件?
这是一个向量:
myVect = c(1,6,3,12,11,15,7,9,19,21)
Run Code Online (Sandbox Code Playgroud)
如何获得通过重新排序可以获得的所有可能的不同向量的列表myVect?
一种可能的重新排序方式可以通过以下方式获得:
set.seed(12)
sample(myVect)
Run Code Online (Sandbox Code Playgroud) expand.grid是一个非常方便的功能,R用于计算几个列表的所有可能组合.下面是它的工作原理:
> x = c(1,2,3)
> y = c("a","b")
> z = c(10,12)
> d = expand.grid(x,y,z)
> d
Var1 Var2 Var3
1 1 a 10
2 2 a 10
3 3 a 10
4 1 b 10
5 2 b 10
6 3 b 10
7 1 a 12
8 2 a 12
9 3 a 12
10 1 b 12
11 2 b 12
12 3 b 12
Run Code Online (Sandbox Code Playgroud)
如何在Julia中重现此功能?
考虑下面的代码
\nfunc main() {\n var (\n negativeTwoThirds = -2.0 / 3.0\n negativeSix = -6.0\n negativeThree = -3.0\n )\n\n for _, v := range []float64{negativeTwoThirds} {\n four := negativeSix * v // 4 = (-6.0) * (-2/3)\n\n print1(negativeThree + four)\n print2(negativeThree, four)\n }\n}\n\nfunc print1(c float64) {\n fmt.Printf("%f (%b)\\n", c, math.Float64bits(c))\n}\n\nfunc print2(a, b float64) {\n c := a + b\n fmt.Printf("%f (%b)\\n", c, math.Float64bits(c))\n}\nRun Code Online (Sandbox Code Playgroud)\n我在个人 Linux 机器以及 go Playground(演示)上尝试了代码,它产生的输出都是我期望的输出
\n1.000000 (11111111110000000000000000000000000000000000000000000000000000)\n1.000000 (11111111110000000000000000000000000000000000000000000000000000)\nRun Code Online (Sandbox Code Playgroud)\n我在两台 macOS 机器上尝试了该代码,两次都出现舍入错误
\n …r ×8
combinations ×2
ggplot2 ×2
julia ×2
arrays ×1
bayesian ×1
colors ×1
go ×1
graph ×1
graphics ×1
histogram ×1
interaction ×1
performance ×1
plot ×1
random ×1
statistics ×1