R中的模式匹配和替换用于平均值表

时间:2018-06-09 17:53:37

标签: r replace average

我是R的初学者,我正在摸不着头脑。

我正在尝试根据降雨模式制作特定测量的平均值表。 (C2是一个站点名称。)在某些情况下,测量值低于特定阈值(例如,在数据集中,一个流量测量可能是<0.01英尺/秒。)因为<0.01不是我使用<函数删除了gsub并根据以下内容运行了平均值:

data_C2_numeric <- data_C2
data_C2_numeric$flow = as.numeric(gsub("<","",data_C2_numeric$flow, ignore.case = TRUE))
table_averages_C2 <- aggregate(data_C2_numeric, list(data_C2_numeric$weather), FUN=mean, na.rm = TRUE)

这似乎有效。但是,一旦创建了averages表,我只想在<列中包含data_C2$flow符号的情况下重新插入<符号

我知道此命令会插入<但会插入它,无论data_C2$flow是否包含<

table_averages_C2$flow = gsub("^", "<", table_averages_C2$flow) 

我知道此命令用于确定data_C2是否包含<

startsWith(as.character(data_C2$flow), "<")

那么如何将这两个命令合并为一个,以便<符号仅在table_averges_C2中出现时插入data_C2$flow

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

您可以使用330000,200000,,,xbdcb,rrrrrr,N,N,2018-06-14,N 330000,200000,,,xbdcb,rrrrrr,N,N,2018-06-14,N 330000,200000,,,xbdcb,rrrrrr,N,N,2018-06-14,N 330000,200000,,,xbdcb,rrrrrr,N,N,2018-06-14,N 函数以及sapplyany(grepl(...))来检查进入汇总数据的任何元素是否包含any(startsWith(...))

<