小编Bra*_*den的帖子

删除字符串末尾的点和数字

如何删除一个数字(长度为一位或两位数)以及每次在特定变量中的字符串末尾出现时直接位于其前面的点R?例:

z<-c("awe", "p.56.red.45", "ted.5", "you.88.tom") 
Run Code Online (Sandbox Code Playgroud)

我只想删除.45.5.

regex r

8
推荐指数
1
解决办法
4716
查看次数

使用for循环将注释放在ggplot2中一系列直方图的顶部

我正在创建一些直方图,我想在图的顶部添加注释.我正在使用for循环绘制这些,所以我需要一种方法将注释放在顶部,即使我的ylims从图形更改为图形.如果我可以在循环中存储每个图形的ylim,我可能会导致我的注释的y坐标根据当前图形而变化.我的注释中包含的y值必须在循环进行迭代时动态更改.下面是一些示例代码来演示我的问题(请注意注释如何移动.我需要根据每个图形的ylim进行更改):

library(ggplot2)

cuts <- levels(as.factor(diamonds$cut))

pdf(file = "Annotation Example.pdf", width = 11, height = 8,
    family = "Helvetica", bg = "white")

for (i in 1:length(cuts)) {
  by.cut<-subset(diamonds, diamonds$cut == cuts[[i]])
  print(ggplot(by.cut, aes(price)) +
    geom_histogram(fill = "steelblue", alpha = .55) +
  annotate ("text", label = "My annotation goes at the top", x = 10000 ,hjust = 0, y = 220, color = "darkred"))
}    
dev.off()
Run Code Online (Sandbox Code Playgroud)

for-loop r ggplot2

5
推荐指数
1
解决办法
2735
查看次数

R:当字符串超过设定长度时,在grid.table中换行文本

我在gridExtra包中使用grid.table以表格格式显示调查注释列表.当comments(字符串变量)超过给定长度时,我希望它自动插入换行符"\n".

library(gridExtra)
df<-data.frame(comments = c("Here is a short string", 
"Here is a long string that needs to be broken in half so that it doesn't run off the page",
"Here is another short string"))

grid.newpage()
print(grid.table(df$comments))
Run Code Online (Sandbox Code Playgroud)

如果此功能在其他地方可用,我愿意使用不同的表包.

r gridextra

5
推荐指数
1
解决办法
1688
查看次数

将字符串变量中的给定字符替换为另一个长度相等的字符串变量中的字符

我有一个数据框,其中包含两个字符串变量,字符数相同.这些字符串代表学生对某些考试的回答.第一个字符串包含正确回答的每个问题的+号和每个错误项的错误响应.第二个字符串包含所有正确的答案.我想用第二个字符串中的正确答案替换第一个字符串中的所有+符号.可以使用以下代码创建简化的启发式数据集:

df <- data.frame(v1 = c("+AA+B", "D++CC", "A+BAD"), 
                 v2 = c("DBBAD", "BDCAD","CDCCA"), stringsAsFactors = FALSE)
Run Code Online (Sandbox Code Playgroud)

因此,df$v1需要更换+符号,其中的字母df$v2与字符串的开头距离相同.有任何想法吗?

regex r

4
推荐指数
1
解决办法
196
查看次数

我正在尝试根据 R 中因子变量的级别在循环中更改工作目录

我在一个学区工作,并计划生成独特的 PDF 报告,我将这些报告发送到一个共享驱动器,其中包含我学区 40 多所学校中每所学校的文件夹。

我正在尝试在我的for循环中设置工作目录,以便每所学校都能获得为其学校量身定制的报告。学校文件是根据一些名为“school_name”的变量的级别命名的,现在我想根据我使用学校数据的事实写入这些文件夹[i]。

schools <- levels(as.factor(data$school_name))
for (i in 1:length(schools)) {
  setwd("W:\\Data Analysis Results\\"paste(schools[[i]]))
  ## some command to create a unique PDF report for school [[i]]
}
Run Code Online (Sandbox Code Playgroud)

r

2
推荐指数
1
解决办法
4049
查看次数

标签 统计

r ×5

regex ×2

for-loop ×1

ggplot2 ×1

gridextra ×1