我想为每个因素拟合三个不同的函数(var.test)。我尝试了以下方法,但收到错误消息Warning messages: 1: Computation failed in stat_smooth() :invalid formula。还有其他方法可以同时读取多个公式吗?
set.seed(14)
df <- data.frame(
var.test = c("T","T","T","T","M","M","M","M","A","A","A","A"),
val.test = rnorm(12,4,5),
x = c(1:12)
)
my.formula <- c(y~x + I(x^2), y~x, y~x + I(x^2))
ggplot(df, aes(x = x, y = val.test)) + geom_point() +
geom_smooth(method="glm", formula = my.formula,
method.args = list(family = "poisson"), color = "black" ) + facet_grid(.~var.test)
Run Code Online (Sandbox Code Playgroud)
我想要如下编码的堆栈图,但我希望它们看起来是立方体的(附后)。在 R 中甚至可能吗?
set.seed(123)
specie <- c(rep("sorgho" , 3) , rep("poacee" , 3) , rep("banana" , 3) , rep("triticum" , 3))
condition <- rep(c("normal" , "stress" , "Nitrogen", "T") , 3)
value <- abs(rnorm(12, 0 ,15))
data <- data.frame(specie,condition,value)
# Stacked
ggplot(data, aes(fill=condition, y=value, x=specie)) +
geom_bar(position="stack", stat="identity", alpha = 0.7, width = 0.3) + theme_classic()
Run Code Online (Sandbox Code Playgroud)
我有q = [[7,2,3],[4,5,6]]和r=[[6,1,2],[3,4,5]].我需要用r中的相应元素来划分q.(即[[7/6,2/1,3/2],[4/3,5/4,6/5]])
所需产出B = [[1.16,2,1.5],[1.33,1.25,1.2]]
码:
B= [[float(j)/float(i) for j in q] for i in r].
但是,我一直收到错误:TypeError:float()参数必须是字符串或数字.我从未来进口部门.有什么建议?
我有一个数据集
df <- data.frame(sp = rep(c("A","B","C","D"), each = 10), val = rnorm(40,6,0.1))
sp val
A 6
A 6.1
A 5.9
...
D 6.2
Run Code Online (Sandbox Code Playgroud)
我想“转置”行,使最终的数据框看起来像
sp 1 2 3 4 .....10
A 6 6.1 ...
B
C
D
Run Code Online (Sandbox Code Playgroud)
我无法使用传播,因为它不是唯一的列。转置和枢轴宽也不起作用。