R 日期和财务数据

我有一套一年的财务数据。数据是在工作日收集的。 考虑到第一个数据点是在3日为juanari上的EaxPle收集的,在R中有没有办法为每个数据点指定一个日期。您需要采取两个步骤来获得解决方案: 使用seq.Date 使用wday计算一周中的某一天,并删除值为1(星期日)和7(星期六)的所有天 代码和结果: startdate <- as.Date("2011-01-03") dates <- seq(startdate, by="1 day", length.out=15) dates

R 按行名聚合大型矩阵中的行

我希望通过在具有相同行名的行中添加值来聚合矩阵的行。我目前的做法如下: > M a b c d 1 1 1 2 0 1 2 3 4 2 2 3 0 1 2 3 4 2 5 2 > index <- as.numeric(rownames(M)) > M <- cbind(M,index) > Dfmat <- data.frame(M) > Dfmat <- aggregate(. ~ index, data = Dfmat, sum)

使用LPR SOLVE在线性规划中添加1000个约束

我试图实现一个大的线性模型,但我遇到了一个问题 添加更多变量/约束。例如,我想添加约束而不添加 矩阵(f.con)中的其他零(0),如示例中所示: library(linprog) f.obj <- c(3,24,79,140,230,306,338, 26,78,145,226,309,336,354, 146,250,312,364,417,496,508, 314,382,424,472,503,525,548) f.

R $运算符对于原子向量无效

我有一个非常简单的数据集,我试图对表的第一列执行table(),但是R返回一条带标题的错误消息。我在网上搜索,但不太明白为什么会发生这种情况,因为R接受我的表作为一个表。。。有人能给我建议吗 我的预期产出: > table(tab$V1) CA 1 CO 1 OH 2 然而,它返回: > tabraw V1 V2 1 OH Cleveland 2 OH Columbus 3 CO Denver 4 CA SanFran > tab

打印时间序列时,将x轴标签设置为日期 x=read.table(text=“Qtr1 Qtr2 Qtr3 Qtr4 2010 1.8 8.0 6.0 3.0 2011 2.0 11.0 7.0 3.5 2012 2.5 14.0 8.0 4.2 2013 3.0 15.2 9.5 5.0", sep=”“,header=TRUE) y

当您调用轴(1,at=time)时,您告诉R在时间所给的点上用标签绘制x轴。但是,时间是字符的向量,而不是数字 通常,可以调用轴(1,at=…,labels=…),指示实际标签以及沿轴放置标签的位置。在您的情况下,对plot.ts的调用隐式地将x轴限制设置为2010和2013.75,因此at参数应该反映这些限制 因此,您要调用轴,表示标签是时间,位置是2010、2010.25、2010.50…,即seq(from=2010,to=2013.25,by=0.25)。一般的解决方案是: x=read

利用R中的割树从距离矩阵中提取组

我从一个爱好和人的列表开始,我想根据他们的共同爱好对这些人进行分类。因此,我创建了一个距离矩阵,然后应用层次聚类和割树将聚类分为特定数量的聚类。现在我有了割树矩阵,但我不知道如何从中提取簇。你能给我一些建议吗 这是我的意思的一个例子 距离矩阵: one three two one 0 1.0 1.0 three 1 0.0 0.5 two 1 0.5 0.0 然后我使用hclust和cutree得到了这

R公式中LHS的多重聚集算法

对于如何使用公式左侧的算术进行多个聚合,例如求和和和平均值,有没有人有什么好主意 aggregate(A+B ~ C, data=D, FUN=c(sum, mean)) 我希望有一个三列的结果,包括C、平均值(a+B)和总和(a+B) 我看过“doBy”软件包中的summaryBy,但它在算术上失败了 我发现的最接近的方法是创建一个接受param的自定义函数,然后在其中应用2个聚合函数,但是,结果仍然有点混乱,因为有2列,第二列包含一个包含两个聚合的列表 aggregate(A+B ~ C,

如何在R中以特定频率重复列名

我有一个10x5矩阵。五列中的每一列都命名为 我需要创建一个向量,如下所示: c( rep(colnames(mymatrix)[1], dim(mymatrix)[1]), rep(colnames(mymatrix)[2], dim(mymatrix)[1]), ... rep(colnames(mymatrix)[5], dim(mymatrix)[1])) 但是,如果我有不同数量的列怎么办?如何在不使用for循环的情况下实现自动化 谢谢 您可以使用rep的每个参数执行此操作:

R警告:“';软件包:stats';“装载时可能不可用”;

我在RStudio已经使用了arules软件包和RODBC软件包几天了。同时,我多次保存了工作区映像。但今天我想再次保存我的工作区图像,现在我收到以下警告: 警告信息: 在save中(list=ls(envir=.GlobalEnv,all.names=TRUE),file=outfile,: “package:stats”在加载时可能不可用 我只使用了arules和RODBC函数和stru-split\u-fixedfromstringr和一些标准的东西,比如data.frame 我甚至没有使

R 将kmeans聚类结果导出到.csv

我对从.csv导入的数据进行了k-means聚类。是否仍然可以将聚集结果导出回.csv文件?因为在k-means聚类完成之后,变量的类不是数据帧而是kmeans 在大多数R软件包帮助文件中,都会有一个副标题,上面写着“值”,用于描述所进行分析的输出。我最近没有使用kmeans,但我相信您希望这样: kmeansresults<-kmeans(dataframe) x<-kmeansresults$clusters write.csv(x, file="name_of_file.csv

R ggplot2中的单向误差条

我正在绘制干预前后重复测试的一些数据。因此,我想用误差条在同一个图上绘制结果。由于两次试验的误差条交叉,难以破译,我只想在后测试时向上绘制误差条,在预测试时向下绘制误差条。 这在ggplot2中可能吗 示例代码: library("ggplot2") set.seed(1) dat <- data.frame(Trial = c(rep("Pre",9),rep("Post",9)), Time = rep.int(seq(0,120,15),2),

R 一系列数据开始时的滚动方式和应用方式

我想对数据集中的前4个值进行滚动平均。然而,对于开始,因为没有4个值,我想做1/2/3观测值的滚动平均值。我该怎么做 library(zoo) df= data.frame(a=c(1,2,3,4,5)) df$answer = rollapply(df$a, 4,mean) #help 例如,第1行的值为1,第2行的值为(1+2)/2=1.5,第3行的值为6/3=2 我想做4个周期的滚动平均值,但在月数较少的周期中,我想做允许的最大周期的平均值。您也可以尝试不使用套餐: sapply

如何使用dplyr的列索引对选定列进行行求和?

在dplyr中,如何对所选列执行行求和(使用列索引) 这不管用 > iris %>% mutate(sum=sum(.[1:4])) %>% head Sepal.Length Sepal.Width Petal.Length Petal.Width Species sum 1 5.1 3.5 1.4 0.2 setosa 2078.7 2 4.9 3.0

R 删除少于三个周期的指标制度

我正在寻找以下问题的帮助 假设我有一个指示符变量: ind <- c(0,1,1,1,0,0,0,0,0,1,0,0,1,1,0,0,0,0,1,1,1,1,1,0,0,0,1,1,0) ind我们可以使用rle来实现这一点。我们得到'ind'的rle,通过对小于3的'length'进行子集设置来更改'values',对于值为1的值(!!values),将相应的'values'指定为0,并使用inverse.rle将输出转换回vector inverse.rle(within.list(

tidyr聚集:位置必须介于0和n之间错误

我有一些数据如下: x.row10 <- setNames(data.frame(letters[1:3],1:3,2:4,3:5,4:6,5:7,6:8,7:9), c("names",2004:2009,2012)) # names 2004 2005 2006 2007 2008 2009 2012 #1 a 1 2 3 4 5 6 7 #2 b 2 3 4 5

R中随机森林模型的进度条

我在R中使用随机森林模型 对于大量的树,我的程序需要很长时间才能完成 在“randomForest”函数中,我可以使用“do.trace=TRUE”来查看实时进度。在R控制台上实时输出的示例如下 ntree OOB 1 2 3 4 5 6 7 8 9 100: 2.31% 7.14% 2.08% 0.00% 2.25% 10.81% 0.90% 0.00% 0.00% 1.72%

R 用jsonlite进行嵌套列表解析

这是我最近第二次面对这个问题,所以我想看看当其中一个元素是作为列存储在数据帧中的数组时,是否有更好的方法来解析从jsonlite返回的数据帧 我知道这部分功能是通过jsonlite实现的,但我不确定如何使用这种嵌套结构。最后,我想我可以编写自己的自定义解析,但考虑到我已经差不多做到了,我想看看如何处理这些数据 例如: ## options options(stringsAsFactors=F) ## packages library(httr) library(jsonlite) ## se

R 小平面包裹、无鳞片的林地

我正试图在R中生成一个带有刻面的森林图,其中y轴是无标度的。但是我遇到了麻烦 以下是我的示例数据: set.seed(1) df <- data.frame(y=rnorm(10),x=c(1:5,1:3,1:2),group=c(rep("a",5),rep("b",3),rep("c",2)),name=c(paste("a",1:5,sep=""),paste("b",1:3,sep=""),paste("c",1:2,sep=""))) df$ymin <- df$y-run

R 不考虑小数点打印有效数字

下表(平均值±se)包含将在出版物中呈现的真实数据。如你所见,数据的范围非常广泛。使用R,我将所有数字四舍五入为3个有效数字,但我希望包括尾随的零以及小数点左侧的零作为有效数字,以保持表格整洁。所以基本上我希望所有的数字,在小数点的两边,包括零,都被认为是有意义的,所以不管数字是什么,只打印3位数字。这可能吗?我尝试了signif,round,sprintf,options()和formatC,但都没有成功。 这些结果是使用x$summary=paste(signif(x$Value,digit

R 下图显示了控制比例颜色手册时的2个图例

嗨,我有下面的情节,有两个传说出现。我有一个问题: 目前,我添加的图例有6个条目“A值”、“Ad值”、“au值”、“b值”、“bD值”和“bU值”。我真的希望图例只显示4个条目 在图例中,这应该是一条蓝色实线,就像现在一样 “bd&bu”,在图例中,这应该是一条蓝色虚线……不知道如何得到它 在图例中,这应该是一条红色实线,就像现在一样 “ad&au”,在图例中,这应该是一条红色虚线……不知道如何实现这一点 有什么想法吗 显示第二个图例是因为您仅在两个辅助线之一中更改了标签和标题。如果更改另

R 当函数使用elemets';矩阵中的位置

我想使用mapply将fun应用于矩阵的所有元素。当要应用的函数使用矩阵中每个元素的位置时,我不确定如何使用mapply fun <- function(theta, mat, i, j){ sum_nearby <- function(mat,i,j,dist){ if (j - dist < 1) mat[i, j + dist] else if (j + dist > ncol(mat)) mat[i, j - di

R 按分类变量为连续变量创建汇总表

我是R的初学者,已经从Stata/SPSS转换到R。我曾经在Stata中运行TABLAR命令,通过对变量分组来生成连续变量的摘要。我有什么办法可以做到这一点吗 我继续搜索,发现了这条线索: 虽然Hadley的映射函数确实帮助我提供了四分位数、均值和中位数,但我需要更多。具体地说,一个特定四分位数中的元素数量,一个因子的特定级别中的元素数量 以下是虚拟代码: data <- c(62, 60, 63, 59, 63, 67, 71, 64, 65, 66, 68, 66,

R 如何规划天井灯的最有效路线

我想把院子里的灯串起来。根据我的要求,我意识到我需要一个算法来解决一个问题,以找出灯光应该采取的最有效的路线,从而使灯光覆盖的重复边最少。经过一番搜索,我意识到也许像这样的东西是我最好的选择 但是,我在创建图表时遇到了问题 以下是它需要的外观: 粉红色的圆圈代表我可以悬挂灯光的地方 “启动”是唯一可用的电源插座 黄点表示灯光应覆盖的所有位置 下面是我的图表在引用这篇文章后的样子: 如您所见,所有节点都位于正确的位置,但边在不应连接的位置连接。这是我的密码: library(igraph)

在ggraph/igraph中不考虑镶嵌面的节点

我很难理解ggplot2和ggraph在刻面方面的区别。考虑以下数据: library(igraph) library(ggraph) library(ggplot2) df <- structure(list(x = c("H001", "H024", "H090", "H090", "H098", "H103", "H126", "H152", "H155", "H155", "B002", "B011", "B075",

逐行运行另一个dataframe的调用列数据

这是我的第一个数据帧 df1 <- as.data.frame(matrix(rbinom(9*9, 1, 0.5), ncol=9, nrow =9)) colnames(df1) <- paste(rep(c("a","b","c"), each=3), rep(c(1,2,3), 3), sep = "") set.seed(11) factor.1 <- paste(rep(c("a","b"), each=3), rep(c(1,2,3), 2), sep = ""

将dplyr链转换为函数

给定一列日期,这将统计每个月的记录数 library(dplyr) library(lubridate) samp <- tbl_df(seq.Date(as.Date("2017-01-01"), as.Date("2017-12-01"), by="day")) freq <- samp %>% filter(!is.na(value)) %>% transmute(month = floor_date(value, "month")) %>

如何从需要验证的URL下载R中的文件?

我试图通过R以编程方式下载 library("readxl") ZIPURL <- "https://www.cms.gov/apps/ama/license.asp?file=/Medicare/Medicare-Fee-for-Service-Payment/ClinicalLabFeeSched/Downloads/18CLAB.zip" CLAB_FileName <- "CLAB2018v1.xls" temp <- tempfile() download.fil

R:使用for循环的子集数据

我有一个包含邻域的大型数据集,但我只想要这些邻域的一个子集,其中我有一个字符向量。 我考虑过使用for循环对其进行子集设置,请参见下面的数据示例和代码示例。看起来我的for循环实际上是在所有邻域上循环的——然而,在我的新数据集中,只有一个邻域出现,而不是所有邻域的子集。有人能告诉我我在密码里做错了什么吗 我被这些答案所启发: 最好的。谢谢 示例数据 大数据集: > head(CBS, n=5) # A tibble: 5 x 37 `Wijken

如何在dplyr中使用mutate进行grep

我想得到一些帮助,了解我的dplyr管道中发生了什么,我请求各种解决方案来解决这个问题 问题 我有一个研究所的列表(正式术语是指研究期刊文章的作者来自哪里),我想提取主要研究所的名称。如果它是一所大学,它将是XX大学,为了简单起见,这就是我在这里坚持的例子 尝试解决方案逻辑 用逗号分隔机构名称 “大学”或其他大学相关术语的grep 在命中的位置提取索引 边缘案例/假设 我正在搜索的术语只存在于一个拆分中 这里的所有研究所都是大学(为了避免堆栈溢出,这里的问题保持简单) 代码 我假设正在发生但

R 如何正确使用gsub替换字符串

我看了一些其他的答案,并试图复制代码,但运气不佳。我有一个街道名称列表,希望保留这些名称,但去掉了它们的名称,如street、st、stret、avenue、avnuen等。显然,有些名称拼写错误。我尝试了以下方法: group<-c("avenue", "avenuen", "ave", "street", "st", "stret") group result: "avenue" "avenue" "ave" "street" "st" "stret" gsub("avenue","a

从R数据帧中的日期条件收集值

我喜欢下面提到的dataframe(例如): 通过使用上述数据框,我需要通过ACC_ID和ACC_TYPE从最极端的月份聚合中收集过去三个月的日期5、10、15、20和25的值。如果我们没有推送05、10、15、20和25的任何月份,则给出过去日期的估计值(即如果20不可访问,则给出19的估计值,如果19不小于18,依此类推) 如果无法访问任何月份,请在该月份演示零激励 在下面提到的示例输出中,为了简单起见,我保留了Date\u 1到Date\u 4和Value\u 1到Value\u 4,对于

在R中使用比例函数后如何获得中心和比例

这似乎是一个愚蠢的问题,但我已经在网上搜索,但仍然没有找到任何充分的答复 我的问题是:假设我们有一个矩阵M,然后我们使用scale()函数,我们如何通过编写一行代码来提取每列的中心和比例(我知道我们可以看到中心和比例…),但我的矩阵有很多列,手工操作很麻烦 有什么想法吗?非常感谢 您正在查找属性函数: set.seed(1) mat = matrix(rnorm(1000),,10) # Suppose you have 10 columns s = scale(mat) # scale

R 在数据变量中转换因子变量

我有100亿行的大数据集。在这个大数据文件中有一个日期变量。但该变量是自然因素(如2012年3月19日、2012年2月20日等)。我想在原始数据变量中转换这个因子变量。我已经尝试过这种方式,但它显示“NA”输出!有人能给我建议一下使用R的可能解决方案吗 strDates <- c("19MAR2012") dates <- as.Date(strDates, "%d %m %Y") dates #[1] NA strDates您需要 as.Date(strDates, "

R Gamma-GLM模型的工作残差计算

我试图计算伽马GLM模型的工作残差。我手动执行此操作是因为我想一步一步地计算部分残差。我的模型及其系数和预测如下所述: library(datasets) data(mtcars) model <- glm(mpg ~ cyl + disp + hp, data=mtcars, family=Gamma) coefs <- coef(model) pred <- coefs[1] + coefs[2]*mtcars$cyl + coefs[3]*mtcars$disp + c

R 条形图-计数变量显示的是频率,而不是数据列中的值

作为参考,以下是我的数据- 我试图用条形图来观察这些变量之间的关系。下面是我使用的R代码和我得到的绘图 library(lattice) barchart(DiagAge~interaction(Gender,Race),groups=Ethnicity,data=df,auto.key=T,stack=T) 我想在Y轴上看到Diagrage(糖尿病被诊断的年龄),然而,当前代码显示的一些数字看起来像是某件事情的频率 这里有一个tidyr和ggplot解决方案。我使用了具有代表性的数据来节

R:对于平滑函数,数值积分返回错误的结果,但不会完全失败

使用内置的integrate函数在R中集成数千个性能良好的函数时,我得到了一个非常不可能但非常危险的数值错误 故事(可以跳过)。我的问题与最大似然法有关,并且基于一个高度非线性的函数(10–20个参数),对于该函数,不存在解析表达式,因此一次求值需要计算数千个积分。我已生成包含此错误的MWE。为了优化此函数,由于存在多个局部最优解,我尝试了1000个点,进行了1000次迭代(使用无导数方法,如hydroPSO中的粒子群和DEoptim中的差分进化),因此仅对于一个模型,我就必须计算超过十亿个积分

R 删除唯一观测值少于9个的ID

我正在尝试筛选我的数据,并删除具有少于9个唯一月观察值的ID。我还想创建一个包含计数的ID列表 我尝试过使用几个不同的选项: library(dplyr) count <- bind %>% group_by(IDS) %>% filter(n(data.month)>= 9) %>% ungroup() count2 <- subset(bind, with(bind, IDS %in% names(which(table(data.month)

在R中执行非标准求值时对表达式进行部分求值

我正在深入研究R的非标准评估机制。半路上,我仍然不时被卡住 我制作了一个小小的计算器,它将计算结果与结果一起打印出来: calculator <- function(e) cat(deparse(substitute(e)), "=", e) 印刷品: 1 + 2 = 3 但是,使用以下命令调用计算器时: a <- 1; b <- 2 calculator(a + b) 如何调整我的计算器,使其在后一种情况下也能打印1+2=3 我试过: calculator2 <

R 对于基于日期范围的循环分配ID,如何提高代码效率?

大家早上好,我正在寻找一个更好的代码来代替我的代码,因为我的旧电脑 我使用我的代码根据日期范围分配ID,该代码适用于小样本 然而,我的数据有700000OB,我的日期范围有700000OB,我的旧电脑无法完成这项工作,因为我的代码很差,我如何提高代码效率?或者可能有更好的软件包我可以使用?谢谢你们 假设TestDATA与CRSPION FUNDNO之间的一对多关系,考虑合并< /代码>和子集< /代码>,避免嵌套循环: mrg_df <- merge(testdata, test, b

R 查找事件';时间戳在一个时间间隔内

我有一个data.frame,其中包含事件及其到达时间戳(微秒精度)。在第二个数据帧中,我有开始和结束时间(=有效期间隔)的状态 下面是我编写的for循环例程,它可以完成任务,但是非常慢。 我认为data.table、map/apply、并行化(我有12个内核可用)的组合可以大大减少处理时间 你能帮我优化一下代码吗 谢谢 options(digits.secs = 6) start <- strptime("2019-10-16 08:00:00.789543 CET", "%Y-%m-

在R中过滤组(子集)内的内容

我有这些数据 group name 1 A 1 A 1 A 1 B 1 C 2 A 2 B 3 A 3 B 3 C 3 D 我想用标准筛选组。 例如,我想过滤{A,B,C}中的组 组1将被筛选,因为{A,B,C}(组1的唯一组合)位于{A,B,C}中 组2将被筛选,因为{A,B}位于{A,B,C}中 但是,组3不会被过滤,因为{A,B,C,D}不是{A,B,C

R上的三个感叹号

我一直在读一本关于功能工程的书,一段代码有一个三重感叹号,我不明白: vc_pred <- recipe(Stroke ~ ., data = stroke_train %>% dplyr::select(Stroke, !!!VC_preds)) %>% step_YeoJohnson(all_predictors()) %>% prep(stroke_train %>% dplyr::select(Stroke, !!!VC_preds)) %

R 将表格转换为数据帧

我附上了一张图片,但我现在有一个表,我想把它变成一个数据帧。然而,当我尝试 as.data.frame(pred_表) 它返回了完全不同的结果。我想要一个数据框,第一列是名字,第二列是x,第三列是y,等等。 谢谢你的帮助 也许你可以这样做: #Convert to dataframe data <- as.data.frame.matrix(pred_table) #Assign column names names(data) <- letters[seq_along(data)

R 按列表中的列名筛选雷达图

由于下面的代码,我可以在radarchart上显示7辆车(A到G)的特征,我可以通过单击图表左侧的复选框选择要显示的车数: if(交互式()){ 图书馆(闪亮) 图书馆(电子艺廊) dat对服务器代码进行轻微调整可以解决此错误。请尝试此操作 # Server function ------------------------------------------- server <- function(input, output) { observe({ req(input$v

如何用高尔顿-沃森过程求R中的灭绝概率=1?

我正在用几何分布模拟一个基本的高尔顿-沃森过程(GWP)。我用这个来计算每一代的灭绝概率。我的问题是,如何找到灭绝概率等于1的那一代 例如,我可以为GWP创建一个函数,如下所示: # Galton-Watson Process for geometric distribution GWP <- function(n, p) { Sn <- c(1, rep(0, n)) for (i in 2:(n + 1)) { Sn[i] <- sum(rgeom(S

如何使用terra复制此光栅脚本(特别是在使用掩码功能时)?

我想从包含农药使用的光栅文件中提取一些施用率、总施用量和面积。我有很多文件,我需要这样做,光栅是缓慢的,所以我需要在terra中做,而不是努力复制遮罩功能 以下是光栅中的代码(从此处复制:): 有什么办法可以解决这个问题吗?在terra中的区域方法与在光栅中有点不同。在terra中,它可以返回一个光栅(每个单元的面积)或一个数字(总面积)。在您的情况下,a是总面积,您不能将其与mask一起使用也就不足为奇了(当然,在每一步检查对象都很好) 您可以使用sum=FALSE获得所需内容。通过添加mas

R 基于多个时间段计算列的平均值

我想知道如何计算每小时一个变量的平均值。我想每1/2小时计算一次平均值,然后每1、2、4和6小时计算一次 这是我的数据集: dput(head(R3L12, 10)) structure(list(Date = c("2015-05-23", "2015-05-23", "2015-05-23", "2015-05-23", "2015-05-23", "2015-05-23&quo

  1    2   3   4   5   6  ... 下一页 最后一页 共 4364 页