R Melt和dcast基于原始数据帧列的名称

我很难重塑一个数据框以用于错误条形图,将所有列与中心趋势数据相结合,并分别将所有列与错误数据相结合 我从一个数据框开始,其中一列是自变量,然后两列是每个测量的参数:一列是平均值,一列是误差,就像你通常用这种数据格式化电子表格一样。初始数据帧如下所示: df<-data.frame( indep=1:3, Amean=runif(3), Aerr=rnorm(3), Bmean=runif(3), Berr=rnorm(3) ) df.cast<-data

有没有办法在r中创建$2^n$阶乘设计(类似于minitab)

我正在创建一个$2^n$设计(非随机)。我已经手工完成了$2^5$,但我现在必须完成$2^7$和$2^8$。我知道在Minitab中有一个设计生成器,它将列出所有的治疗方法/因素,但我没有访问Minitab的权限。有没有一个R包可以做同样的事情 例如,如果所述梦函数被称为“2n”且I输入: 2to2 <-- 2n(2) 这有意义吗 编辑添加:我看到了FrF2包,但我似乎不能很好地掌握它。有熟悉它的人吗 已解决:FrF2(nfactors=8,resolution=8,randomize

R 如何做长度为5的跑步中位数

如何计算长度为5的跑步中位数?我尝试了平滑功能,但它只能运行长度为3的中间值 试试这个 library(zoo) x <- 1:100 rollmedian(x,5) 图书馆(动物园) 试试这个 library(zoo) x <- 1:100 rollmedian(x,5) 图书馆(动物园) 对于不想安装其他软件包的用户,请从stats软件包中选择x: runmed(1:100, 5) 参数endrule允许控制起始值和结束值的策略 runmed(1:10, 5, endrul

如何获取R中未在向量中指定的数据帧的所有行?

我正在寻找一种优雅的、类似R的方法来捕获数据帧中没有在向量中列出索引的行: table.combos <- matrix(data = 1:12, nrow = 10, ncol = 6, byrow=T) table.combos not.these<-c(2,4,5,9) x<-table.combos[c(not.these),] #y<- everything not in x table.combos只需使用与中相同的索引向量: y <- table.c

R:完整绘图区域的标题(当有多个带有mfrow…)的绘图时)

我正在生成一些大图像,上面有几个绘图: par(mfrow=c(4,3)) title参数仅设置当前绘图的标题(我也需要): 但是我如何为整个绘图区域设置标题呢?一种方法是使用mtext:mtext(“大标题”,side=3,line=-1,outer=TRUE)如果你是R新手,网站是一个很好的资源。下面讨论了组合绘图。 par(main="Title")

使用带有调谐器包的for-loop获取音频文件长度时,调谐器崩溃

第一个问题,希望我问得对 我正在尝试写一段简短的R代码,它将创建一个向量,其中包含我的“音乐”文件夹中所有音频文件的长度。我在i686pclinuxgnu(32位)上使用rstudio0.98.501和r3.0.3。我使用调谐器包来提取歌曲长度的信息。这里有一个问题:我导出第一个MP3文件很好,但当我导出第二个MP3文件时,它会给我“R会话中止,R遇到致命错误,会话将终止” 我正在研究英特尔®;Atom™ CPU N2800@1.86GHz×4,带有2 Gb内存和Ubuntu 13.10

R 如何回收mgcv使用的内存?

我遇到一个问题,当使用R包mgcv运行大量GAM配合时,内存不足。我加载库并用下面的脚本初始化一些随机数据 library(mgcv) #for gam set.seed(1) n = 1000 myData = data.frame(X1=rnorm(n), X2=rnorm(n), X3=rnorm(n), Y=rnorm(n)) gc() 这给 used (Mb) gc t

R 在数据帧中对任意数量的行进行子集设置并保留其间的所有行

我试图根据两个不同列中的一组不同值来对数据帧中的行进行子集划分。下面是一个关于数据帧结构的简化示例 Task=c("Task1", "Task2", "Task2", "Task3", "Task3", "Task1", "Task2", "Task1", "Task2","Task3","Task1") SubTask=c("Subtask1", NA, NA, NA, NA, "Subtask1", NA, "Subtask1", NA, NA, "SubTask2") Event=c("S

R 使用data.table j填写矩阵(通常用于与外部变量交互)

我试图从data.table快速分组中获益,以填充矩阵(或从data.table外部执行其他操作) 例如,我有一个data.table,如下所示: DT = data.table(x_id=rep(c(1,2),c(100,100)),x_value = rnorm(200)) setkey(DT,x_id) (代表两个不同的时间序列) 我想把同样的信息放在一个100行2列的矩阵中。 我试过了 但它不起作用。这给我提出了两个问题:(我无法在文档中找到帮助) 1) 是否有一种很好的方法(无循环)

从Hadoop读取R中的巨大csv文件

我试图从Hadoop中读取巨大的(250MB,60万行,60列)CSV文件。我使用的字段分隔符是“@”,我使用的R代码是 PC2009 <- as.matrix(from.dfs("hdfs://..../apps/g00008/moloy/fuzzy/TUSOpsSODetails_2009.csv", make.input.format(format="csv", sep="@", fill=TRUE))$val) PC2009经过编辑以提高可读性,但您确实需

R中矩阵逆的删除

我最初有一个矩阵,p: # p is a matrix p A B [1,] 1 1 [2,] 2 3 [3,] 3 2 [4,] 1 1 [5,] 8 2 对于一个给定的矩阵,我想迭代行并移除任何逆。因此,新矩阵为: p A B [1,] 1 1 [2,] 2 3 [3,] 8 2 这就是我得到的: p<-unique(p) # gets rid

那元';当0介于1和x27之间时,t在R中省略;s

我假设更改一个表示图(顶点和边类型)的方阵,并将其更改为表示相同图的列表 方阵:元素(i,j)=1表示有一条边i->j 列表:元素i是所有j s.t的向量(可能为空,编码为NA)。有一条边i->j 我的问题是,如果在行的中间有一个零,则返回NA,而当向量为空时,它只假设为空(没有边)。它只在0在两个1之间时才这样做。我不知道为什么,而且NA.omit不起作用。 这是我第一次在R编程 squaretolist <- function(m){ ml <- list()

如何在rgraphviz中找到节点的秩?

在rgraphviz中有一个有向无环图,它将被渲染为点图。我想根据节点的等级控制节点的外观。如何查找节点的秩 这是我的答案。欢迎提出建议 gR是形式类GRAPHNEL的对象 gx <- layoutGraph(gR) #can also add node attributes, sublists here x <- gx@renderInfo@nodes$nodeX y <- gx@renderInfo@nodes$nodeY #x and y are named vector

R 整理数据:基于'为每个人创建行;计数';变量

我有一个数据帧,它的格式非常像下面给出的示例数据帧df1。共有三列:两个分类变量和一个“计数”列,指定具有该特定组合的对象数量 我想将此数据帧移向示例数据帧df2中所示的格式。每个对象只在单独的一行中给出,而不是“Count”列 我曾尝试过使用dplyr和tidyr软件包,但我对R还不是很精通。执行我想要的功能的好方法是什么 set.seed(1) x1 <- c("Pants", "Shoes", "Scarf") x2 <- c("Ugly", "Beautiful") x3 &

R 如何在表格的行中找到每个值的Z分数?

我在R中有一个表,如何使行中的值大于或等于某个数字a1,其余的值为0。例如,如果我的特殊数字是4,那么表中4以上的每个值都是1,其余的值都是零。例如,此表: a b c d e Bill 1 2 3 4 5 Susan 4 1 5 4 2 Malcolm 4 5 6 2 1 Reese 0 0 2 3 8 Would Turn Into a b c d e Bill

R 世界地图艺术

我通过以下操作下载了RCharts: require(devtools) require(stringi) install_github('rCharts', 'ramnathv') library(rCharts) 我的数据集如下: Country<-c('ANTARCTICA','ARMENIA','CHINA','UNITED STATES','BRAZIL') Pay<-c(20,50,100,13,43) mapping<-data.frame(Country,Pa

按月份和小时排列的订单列表(R)

我有一个要读入R的文件名列表。目前,文件名是按字母顺序排列的字符向量,因此当我使用向量读入文件时,它们按字母顺序排列在列表中。我想要的是根据月份和小时来排列字符向量(它们以一种不常见的格式包含在文件名中,并且数据文件本身没有日期/时间变量)。我的向量看起来像 chr [1:288] "tair_apr_01.txt" "tair_apr_02.txt" ... "tair_oct_24.txt" 也就是说,每个月的每个小时都有一个元素(数据是每天的平均值,所以向量中有288个元素) 有没有办法

R使函数对标准和非标准评估都具有鲁棒性

我有一个小函数,它通过依赖于dplyr的数据帧的用户定义的列进行搜索。在下面的当前表单中,它接受非标准求值中的列参数-不带引号(例如标准求值中的场景而不是“场景”) search\u column我建议只删除deparse添加到字符串输入中的附加引号,在这种情况下,它将导致相同的输出,并且您的代码将适用于任何输入 比较3种可能的输入 gsub('"', "", deparse(substitute("mpg"))) [1] "mpg" gsub('"', "", deparse(substitu

R 可以同时使用“两个”;或;及;及;根据df中的列值选择行?

我知道如何根据两列的值选择数据框中的行(使用来自此问题的公认答案的代码:) 我的数据框如下所示(简化): 现在我使用以下代码: df <- df[!(df$Afd=="12" & df$Date=="2012-03-23"),] df您可以添加或使用|语句,或在%中使用% df <- subset(df, !(Afd %in% c("12", "16") & Date %in% as.Date(c("2012-03-23",

R 枣子桶有多厚

我试图做一个特定日期发生频率的柱状图,我希望我的每个箱子代表一整年。我不知道箱子的宽度应该是多少才能使箱子达到一年的宽度。现在我有: Year <- data.frame(dat = sample(seq( as.Date("1987-01-01"), as.Date("2017-01-01"), by = "day" ), 1000), num = rnorm(2000)) ggplot(Year, aes(x = dat)) + geom_histogram(binw

在R中输入缺少的字符值

我有一个名为credit_df的数据集,维度为32561*15。它的native.country列缺少1843个值。缺少的值表示为? 我已经创建了一个因子变量,其中包含使用以下代码的国家列表 country <- unique(credit_df$native.country) 现在,country因子变量具有数据集中的所有国家名称。现在,我想将这些随机分配给列中缺少的值。我该怎么做 我按照建议的方法之一尝试了下面的代码 credit_df$native.country[credit_

R 从字符串中删除数字,除非前面有字母

我有这个字符串:      str <-c ("Street 21, h0use blu3 number 23A", "th3 hosp1tal on 7A Street with 12A") str <- gsub ("\\ b (?! Street) \\ s [0-9] | [0-9]", "", str, perl = T) 我试图消除所有数字,除非它们表示街道,结果如下: "Street 21, huse blu number 23A" "th hosptal on 7A

R ggplot2中不同线条的两种不同比例颜色梯度2()

基本型号: Opt型号: 我将它们保存为(基本模型=pr_base)和(优化模型=pr)-pr是精确召回 我使用以下代码将它们绘制为ggplot: pr <- readRDS("pr.rds") pr_base <- readRDS("pr_base.rds") ggplot() + geom_line(data = data.frame(pr$curve), aes(x = X1, y = X2, color = X3)) + geom_line(data = da

如何在R中生成双累积图

如何在r中生成这种类型的图 Product Revenue Quantity Rev Cum Quat Cum Product A 50% 40% 50% 40% Product B 25% 30% 75% 70% Product C 15% 20% 90% 90% Product D 10% 10% 100% 100% geom_rect获取4个坐标并生成一个矩形mutate_at(-1withfuns(…)作为第二个参数,为每列创建新变量,但列1除外,该列在fu

将成对距离矩阵转换为R中的列格式

我有一个成对的距离矩阵(4x4)。如何将此矩阵转换为列格式(其中有2行)?为什么是两排?因为我不需要所有的两两比较,只需要输出中显示的一半。例如,如果我有一个10x10矩阵,我会有100个比较,但我只有其中5个与我相关,这5个将是species1 vs species2,species3 vs species4,species5 vs species6,species7 vs species8,species9 vs species10 输入: species1 speci

R中的逻辑空值

在这个表达式之后 good.rows<-ifelse(nchar(ufo$DateOccurred)!=10 | nchar(ufo$DateReported)!=10, FALSE, TRUE) [1] 0 正如我在R studio中看到的那样,这是合乎逻辑的(空的)。我能做些什么来解决这个问题 dput(头部(不明飞行物)) 发生这种情况的原因有两个: 如果数据集为空,请使用dim()方法检查此项 列不是字符类型,请使用类()检查此项 方法 如果两者都正确,请尝试运行nchar

R 如何在ggplot中显示没有数据框的图例?

我准备绘制示意图而不是数据可视化。因此导入的数据不是data.frame。大多数线路通过手动操作添加(即geom\u段,geom\u线)。我发现很难显示线型图例或颜色图例。也许它不符合ggplot的思想,但它是一种添加单数行的方便方法,而无需与data.frame组合 x <- 1:10 y <- 2:11 plt <- ggplot()+ geom_point(aes(x=x,y=y),shape=1,color='red',show.legend=TRUE)+ ge

R 为什么是';日期';十年后打印出来?

编写代码以根据周末和联邦假日修改工作日,但出于某种原因,我的'theDate'变量会一直打印十年,即使它作为正确的日期存储在我的RStudio环境中 我尝试了各种日期格式,但我似乎无法理解是什么导致了这个问题 library(date) library(tis) start <- as.Date("2019-01-01", '%Y-%d-%m') end <- as.Date("2020-01-01", '%Y-%d-%m') theDate <- start whil

尝试创建一个for循环,该循环在字符串中的给定字母处停止

我试图创建一个for循环,当它在任何给定字符串中找到第二个“e”或“e”时,该循环停止。到目前为止,我已经想出了这个代码,但输出是错误的。任何想法都会有帮助 mystring <- "R fever" index <- 1 ecount <- 0 result <- mystring while(ecount<2 && index <= nchar(mystring)){ substr(mystring, 1, index) -> re

ggplot2 R中的堆叠条形图

我试图从dataframe创建堆叠的条形图,填充是dataframe的行名,而y是dataframe的列和,x是dataframe的列名。然而,我得到了一个错误: 错误:长度必须为1或与数据(3)相同:x,y 你能告诉我怎么解决吗?先谢谢你 library(ggplot2) df2<-data.frame(c(1000,700,500),c(2000,1500,1000)) rownames(df2)<-c("Revenue", "EBITDA", "EBIT") colnam

使边指向ggraph中被排斥的标签

我正在使用ggraph R包创建一个图形。我想使用geom\u node\u label()标记所有节点,但这通常会造成重叠。一种解决方法是使用repel=TRUE参数。不幸的是,我似乎不知道如何使边缘指向标签移动的位置 解决这个问题的一种可能的方法可能是在绘制图形之前使用排斥进行布局,但我也没有找到一种方法 library(igraph) library(ggraph) # Create example graph my_graph <- make_graph('Meredith')

在R中运行(累积)产品?

等等 我在R怎么做 结果应该是 x <- as.data.frame(1:5) 1*2*3*4*5 = 120 then 2*3*4*5 = 120 then 3*4*5 = 60 >x[,“结果”]x 结果是1:5 1 1 120 2 2 120 3 3 60 4 4 20 5 5 5 我们可以使用cumprod > x[,"result"] <- c(120,120,60,20,5) > x 1:5 r

R 如何对数据帧中的每一行执行条件求和/平均

我有一个数据框,看起来像这样。我想通过只选择满足特定条件的列来求和/平均每行的值(例如,我们可能需要将值替换为NA,然后用NA.rm=TRUE获得行和 newDF <- replace(df1[-1], df1[-1] == -1 |df1[-1] == 0, NA) df1$Sums <- rowSums(newDF, na.rm = TRUE) df1$Means <- rowMeans(newDF, na.rm = TRUE) df1 # Student Resp_1

R 为什么ggplot2在随机点切割x值?

请在下面找到我的数据样本t 我有以下证书。公司-地块 如你所见,绘图在时间=72时自动停止,我不明白。我想用图表继续到84 我使用了以下脚本 library(ggplot2) ggplot(res, aes(time, P)) + theme + geom_ribbon(aes(ymin = lower, ymax = upper, fill = CIF), alpha = 0.2) + geom_line(aes(color = CIF)) + scale_fill_manual

使用R从特定气象站提取数据

我已经浏览了很多关于如何做到这一点的页面,它们基本上都有相同的R代码建议,我遵循了这些建议。以下是我正在寻找的特定气象站的R代码: library(rnoaa) options(noaakey="MyKeyHere") ncdc(datasetid='GHCND', stationid='GHCND:USW00014739', datatypeid='dly-tmax-normal', startdate='2017-05-15', enddate='2018-01-04') 运行此操作时收到

错误-“;自动批不支持tbl_df/tbl/data.frame类型的对象。”;

尝试使用autoplot和ggseasemplot功能,但都不起作用。请引导/帮助 library(readxl) new<-read_excel('NEW DATA.xlsx') View(new) library(ggplot2) autoplot(new) class(new) ggseasonplot(new) 库(readxl) 新据我了解,时间序列不支持data.frame,必须转换为时间序列格式。之所以会发生这种情况,是因为您无法告诉R将整个表/矩阵/数据帧转换为绘图,而不

具有外部指标和quantstrat中多个股票的单变量误差

我们使用与OLHC对象合并的交易数据外部的指标。我们的目标是建立一个quantstrat模型来处理多个股票,但我们继续收到错误消息,表明我们没有正确地建立这样的模型。此外,即使我们没有显式使用EMA,错误也会指向EMA 我从#FXQuantTrader代码开始,这里的答案是:,我可以使用OHLC数据外部的指标和add.signal调用的自定义函数,但不能跳转到多个股票 此堆栈溢出条目旨在直接处理主题,但提供的示例为 “加载您将使用自己的测试策略” 这就引出了如何构建多元股权战略的问题。尝试使用我

如何在R中创建多个数据帧并将其存储在单个列表中

我有6个数据帧,每个数据帧随机抽取3个变量。我想将18个变量存储在一个数据帧中,并将操作迭代1000次,创建1000个数据帧,我想用for循环将这些数据帧存储在一个列表中。我试过这样做: #create 6 clusters cluster1 = subset(log_ret_stand,select = which(pam.res$clustering == 1)) cluster2 = subset(log_ret_stand,select = which(pam.res$clusteri

R ggplot-图像总宽度的中心绘图标题

通常建议将绘图(或任何元素)居中使用hjust,如下所示: ggplot() + ggtitle("Use theme(plot.title = element_text(hjust = 0.5)) to center") + theme(plot.title = element_text(hjust = 0.5)) 然而,我注意到,在情节标题的情况下,它集中在图形变量上,而不是图像的整个宽度。如果有图例或y轴文本太长,他们可以推动绘图区域和标题 以下三个图表以相同的宽度和高度导出。第

基于列的Dcast/merge,值在一定范围内

我有一个面板数据集:panel和一个包含事件列表的数据集:events。对于panel数据集,相等的panelID显示两个观察值属于一起 panelID = c(1:50) year= c(2001:2010) country = c("NLD", "GRC", "GBR") n <- 2 library(data.table) set.seed(123) Panel <- data.table(panelID = rep(sample(panelID), each = n

R 基本图层未显示在ggmap中

对于如何解决ggmap问题,我愿意提供任何建议 假设我们有一些空间模型和残差,然后我们想在地图上绘制它。 使用ggmap功能时,我可以看到基线背景图和base_层-fill的重新生成,但在图中看不到 我提供了一个可复制的示例: library(ggmap) library(maptools) library(ggplot2) #map background bboxPrague <- c(14.22,49.94,14.71,50.18) ggMapPrague <- get_ma

R 修改ggplot2中的美学贴图以获得正确的plotly图例

我有一个ggplot2图表,我想用plotly进行渲染。 x和y变量从字符变量中获取,如下例所示: 库(ggplot2) 图书馆(绘本) 数据集xy #> 1 0.45902147 0.9842178 #> 2 0.04331170 0.8337590 #> 3 0.02202882 0.8607866 #> 4 0.27971306 0.4250171 #> 5 0.35531015 0.7182533 #> 6 0.61235609 0.9905286 #x和y美学的变量 varx`get(

如何加载多个";。RData“;在R中,它们合并为mcmc列表?

假设我在一个文件夹中有多个.RData文件,如 sample 1.RData sample 2.RData sample 3.RData sample 4.RData sample 5.RData sample 6.RData sample 7.RData sample 8.RData 我想加载所有这些文件,并将它们保存为sample\u list=mcmcmc.list(list(mcmc(sample1)、mcmc(sample2), mcmc(sample3)、mcmc(sample4)

预测SE与ggeffects::ggpredict不同-我做错了什么';未找到对象';预测函数

我正在r中对树冠覆盖(过顶,比例以0,1为界)和放置在同一位置的尸体数量(尸体数量,系数以2级为界)对鸟类食用腐肉比例的影响进行分析(比例Birdscavenging,比例以0,1为界)。我通过对CarcastNumber的单独值的比例BIRDSCAVENGING上的过顶覆盖的影响进行建模,然后将其绘制在同一个图中,从而绘制出这种相互作用。完成此操作后,我发现通过plot\u模型(glmm\u interaction,type=“int”)计算的SE与我计算的SE之间存在差异。这里开始调查。这段

R 创建信息更丰富的表输出

我有一个数据表,如下所示 panelID = c(1:50) year= c(2001:2010) country = c("NLD", "BEL", "GER") urban = c("A", "B", "C") indust = c("D", "E", "F") sizes = c(1,2,3,4,5) n <- 2 library(data.table) set.seed(123) DT <- data.table(panelID = rep(sample(panelID

R-使用条件提取xml的一部分

我有这个数据框。我要找的是提取id值od provider,如果名称是goldman。请注意,在某些行中没有goldnam提供程序,因此结果应该是NA df <- data.frame( id = c(1, 2, 3), xml = c( as.character( "<?xml version=\"1.0\" encoding=\"UTF-8\"?> <

R 将每四行合并为一行

所以我有一个CSV文件,我导入了R studio。我进行了分析,然后得知数据收集有误。每4行实际上代表1个月,我需要为6个变量中的每一个将每4行合并为1。数据如下所示: X2 X3 X4 X5 X6 X7 1 3830 0 0 1184 0 5765 2 0 0 153 0 153 153 3 0 0 0 73 73 0 4

在R中将日期转换为小时

我有个人的开始和结束日期,我需要估计从开始到结束的时间是否在2天内 或3天以上。这些日期分配给记录ID,如何筛选2天内结束的日期(从开始日期算起) 以及那些在3天或之后结束的 Record\u id我刚刚用lubridate将字符转换为日期时间,然后减去日期。你会得到的是几天。然后,我过滤2天内的日期 Record_id<- c("2245","6728","5122","9287") Start<-c

R paste0()更改日期的格式

我找不到这个的副本,但我无法想象我是唯一一个遇到这个问题的人 我试图从API中提取一些数据,迭代链接中的日期。我在我的GET()中使用了paste0(),这似乎是我问题的根源。我在下面包含了一些示例代码,演示了如何设置代码。我还运行了一个for循环来精确地打印代码正在执行的操作,并发现日期正在以不同的格式粘贴。API需要YYYY-MM-DD格式的日期,正如我在这里的第一行代码中所做的那样 当前代码的结构 date <- seq(as.Date("2021-01-01")