我正在尝试从循环写入R中的数据帧,例如像这样的循环>
for (i in 1:20) {
print(c(i+i,i*i,i/1))}
Run Code Online (Sandbox Code Playgroud)
并将每行3个值写入具有三列的数据帧,以便每次迭代都采用新行.我尝试过使用矩阵,ncol = 3并按行填充,但只能从循环中获取最后一项.
谢谢.
我正在使用by()来通过我的数据框中的因子来评估函数,但我需要以表格形式使用结果.
我已经看到使用as.data.frame.table将"By"类对象放入数据框中,但我不确定这是否仅在by()函数中使用的因子数量时才有效与"by"输出的长度相同.使用as.data.frame.table我收到以下错误
"...参数意味着不同的行数:10,33"
还有另一种方法吗?可以使用tapply而不是by()来获得不同的输出类吗?
顺便说一下,我用by()将我的数据转换成频率表,然后按标准箱重新组合
BT_by <- by(BT_H, BT_H$Tax_pp, function(BT_H) hist(rep.int(BT_H$Altitude, BT_H$Count), breaks = seq(0,6600,200), plot = FALSE)$counts)
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激.
我正在尝试将一些文本添加到与每个条形相同高度的水平条形图的右侧,但是,text()和axis()似乎都没有在与每个条形对应的高度处绘制这些文本.
这是一个类似的情节
x <- runif(10, 0,1)
y <- matrix(c(x, 1-x), nrow=2, ncol=10, byrow=TRUE)
barplot(y, horiz=TRUE, beside=FALSE, names.arg=seq(1,10,1), las=1, xlim=c(0, 1.2))
Run Code Online (Sandbox Code Playgroud)
这两个选项都没有正确对齐,缩放如何在这里工作?
axis(4, at=seq(1,10,1), labels=seq(1,10,1))
text(1.1, seq(1,10,1), labels=seq(1, 10, 1))
Run Code Online (Sandbox Code Playgroud) 我有一个类似的问题:
使用Excel中的VBA将2个单元格的内容合并到另一个第3单元格中
但我想在一列中组合一系列细胞,例如A2:A50.有时我有超过300个细胞合并为一个.值是文本.有没有办法修改这个宏,以便它可以在一个范围而不是只有两个单元格?
谢谢!
我正在对具有多个预测变量的线性模型的预测值求和,如下面的示例所示,并希望计算该总和的组合方差,标准误差和可能的置信区间。
lm.tree <- lm(Volume ~ poly(Girth,2), data = trees)
Run Code Online (Sandbox Code Playgroud)
假设我有一组Girths:
newdat <- list(Girth = c(10,12,14,16)
Run Code Online (Sandbox Code Playgroud)
为此,我想预测总数Volume:
pr <- predict(lm.tree, newdat, se.fit = TRUE)
total <- sum(pr$fit)
# [1] 111.512
Run Code Online (Sandbox Code Playgroud)
如何获得方差total?
我感谢python新手的一些帮助,我试图从字符串中删除一些字符,例如:
string1 = "100.000"
deleteList = [",", "."]
string1.translate(None, deleteList)
print string1
Run Code Online (Sandbox Code Playgroud)
但我得到了 TypeError: expected a character buffer object
为什么我会收到此错误,它引用了哪个参数?我在哪里可以找到帮助.我在Windows上使用python 2.6.
我正在尝试使用此示例的更新版本通过 Shine 连接到私有 googlesheet,并将此应用程序部署在 Shinyapps.io 服务器上。由于应用程序使用指定的预先存在的 googlesheet,因此用户不需要对 google 帐户进行身份验证。
我已经按照这个例子(部分复制在这里),试图将令牌保存到我闪亮的应用程序:
# previous googlesheets package version:
shiny_token <- gs_auth() # authenticate w/ your desired Google identity here
saveRDS(shiny_token, "shiny_app_token.rds")
Run Code Online (Sandbox Code Playgroud)
但尝试将其更新为 googlesheets4,如下所示:
ss <- gs4_get("MY GOOGLE DOC URL") # do the authentication once, manually.
ss
gs4_has_token() # check that the token exists
# get token
ss_token <- gs4_token()
# save the token
save(ss_token, file = "APP PATH ... /data/tk.rdata")
Run Code Online (Sandbox Code Playgroud)
然后在应用程序中,我将此代码放在shinyApp()函数之外。
load("data/tk.rdata")
googlesheets4::gs4_auth(token = ss_token, use_oob = …Run Code Online (Sandbox Code Playgroud) 我在绘图区域内的水平条形图()上获得y轴时遇到问题.看到这个例子,我认为使用ylim和/或yaxp会阻止它离开绘图区域,但它似乎不起作用.
我试图重现我得到的设置:
x <- matrix(abs(rnorm(34)), nrow = 34, ncol = 3)
rownames(x) <- c(seq(0,6600,200))
barplot(x[,3], horiz=TRUE, space = 0.4, main = "Title", las=1, cex.names=0.8, ylab="y label")
Run Code Online (Sandbox Code Playgroud)
但是,如果我添加ylim,则轴将进入绘图区域:
barplot(x[,3], horiz=TRUE, space = 0.4, ylim = c(0,25), yaxp=c(0,25,1), main = "Title", las=1, cex.names=0.8, ylab="y label")
Run Code Online (Sandbox Code Playgroud) 我有一个堆积的条形图,类似于下面的示例。
我想在每个条形图中添加一两套水平线(指定颜色和线型),每个条形以不同的值添加到图例中。
Titanic.df <- as.data.frame(Titanic)
Titanic.ag <- aggregate( Freq ~ Sex + Class + Age, data=Titanic.df, sum, subset = Survived == "Yes")
bars <- rep(c(0.5, NA, 0.7, NA, 0.6, NA, 0.9, NA), 2)
ggplot(Titanic.ag, aes(x = Class, y = Freq, fill = Sex)) +
geom_bar(position = "fill", stat = "identity") +
facet_grid(~Age) +
geom_errorbar(aes(y = bars, ymin = bars, ymax = bars, col = "Ref1")) +
scale_fill_manual(values = c("darkgreen", "darkblue") ) +
labs(col = "Reference",
fill= "",
y = "Proportion", …Run Code Online (Sandbox Code Playgroud) 我想对箱线图名称使用字符向量,如何使它们显示为斜体?
# get some data
x <- rnorm(1000)
# I want to get this:
labels <- c(expression(italic("One"), italic("Two")))
labels
boxplot(split(x, cut(x,breaks = c(-Inf, 0, Inf))), names = labels)
Run Code Online (Sandbox Code Playgroud)
但是使用字符向量,例如
sNames <- c("One", "Two")
Run Code Online (Sandbox Code Playgroud)
我试过了bquote(),expression()...
labels <- bquote(expression(italic(.(sNames))))
labels # but this is length 1, not 2
Run Code Online (Sandbox Code Playgroud)
... 与sapply()
labels <- sapply(sNames, function(x) bquote(expression(italic(.(x)))))
labels
boxplot(split(x, cut(x,breaks = c(-Inf, 0, Inf))), names = labels)
Run Code Online (Sandbox Code Playgroud)
但这似乎不能被解释为一个表达式。
谢谢你的帮助。