首页 文章
  • 1 votes
     answers
     views

    dplyr - 使用正则表达式的多列的总和

    对于数据集mtcars2 mtcars2 = mtcars mtcars2 = mtcars2 %>% mutate(cyl9=cyl, disp9=disp, gear2=gear) 我希望通过使用正则表达式捕获模式来获得一个新列,即多列的总和 . 这是一个解决方案,但这是通过硬编码完成的 select(mtcars2, cyl9) + select(mtcars2, disp9) + ...
  • 2 votes
     answers
     views

    dplyr / tidyr - 用条件汇总数据

    Problem 我正在尝试使用dyplr&tidyr来实现一个输出表(就像我认为的列联表),它将这些数据汇总到频率中(例如, Headers ,描述和主体的数量是负数,中性和正数) . 我尝试了许多不同的方法,我能找到的最接近的例子是Using Tidyr/Dplyr to summarise counts of groups of strings . 但这完全不合适 . Example Data...
  • 36 votes
     answers
     views

    使用dplyr窗口函数计算百分位数

    我有一个有效的解决方案,但我正在寻找一个更清晰,更易读的解决方案,可能会利用一些较新的dplyr窗口函数 . 使用mtcars数据集,如果我想查看第25,第50,第75百分位数以及每加仑英里数(“mpg”)和气缸数(“cyl”),我使用以下代码: library(dplyr) library(tidyr) # load data data("mtcars") # Perce...
  • 1 votes
     answers
     views

    dplyr tidyr扩大和总结特定列

    我正在努力使用dplyr和tidyr来获取这种形式的df: myDf <- data.frame(id = c(1,1,1,1,2,2), event = c('a','b','a','b','a','b'), a_property = c(1,NA,2, NA, 3, NA), ...
  • 13 votes
     answers
     views

    tidyr中的隐式排序:: spread和dplyr :: summarize

    我的数据是有序观察,我希望在进行操作时尽可能保持顺序 . 得到this question的答案,我把"B"放在数据帧的"A"之前 . 生成的宽数据按"name"列排序,即"A"首先,然后"B" . df = data.frame(name=c("B","B",...
  • 5 votes
     answers
     views

    使用Tidyr / Dplyr汇总字符串组的计数

    我需要总结一下我分配给组的字符串数量,我知道我可以在dplyr / tidyr中完成,但我遗漏了一些东西 . 示例数据集: Owner = c('bob','julia','cheryl','bob','julia','cheryl') Day = c('Mon', 'Tue') Locn = c('house','store','apartment','office','house','sho...
  • 5 votes
     answers
     views

    将tidyr :: spread和dplyr :: summarize结合在一起

    我经常想在"single step"中执行 tidyr::spread 和 dplyr::summarise 来按组聚合数据 . 我想要的是 expected . 我可以通过单独执行 summarise 和 spread 来获得 expected 并将结果与 dplyr::full_join 结合起来,但我正在寻找 alternative approaches that av...
  • 0 votes
     answers
     views

    使用tidyr汇总到多个列

    我有一个包含两列的数据框 . Col A是参考文献的载体,Col B是参考文献中研究位点的相应载体 . 我的问题是,在一个参考文献中可能有多个研究站点,也可能在多个参考文献中找到一个研究站点 . 我想对研究站点进行总结,返回与研究站点相关联的列数 . 就像是: Original table ------------- ref | site ------------- A | S1 ----...
  • 0 votes
     answers
     views

    在加入Dplyr之前比较两个数据帧之间的名称列

    我想知道在dplyr中进行连接之前是否有一种比较列的简单方法 . 以下是两个简单的数据帧 . 我想根据名字和姓氏进行全面加入,但是有一些拼写错误或不同格式,例如“Elizabeth Ray”和“Elizabeth” . 我想在加入之前比较这些列 . 我希望有一种方法可以产生一个列表或向量,包含索引的所有差异,所以我可以在加入之前纠正它们 . 如果有一种更简单的方法,我也会对此持开放态度,但我希望有...
  • 1 votes
     answers
     views

    在加入或合并之前在两个不同的数据帧列中查找不匹配的名称

    我想知道在dplyr中进行连接之前是否有一种比较列的简单方法 . 以下是两个简单的数据帧 . 我想基于名字和姓氏加入,但是有一些拼写错误或不同的格式,例如“Elizabeth Ray”和“Elizabeth” . 我想在加入之前比较这些列 . 有没有办法使用匹配函数或设置操作,如交叉等,来查找两列中没有匹配项的名称?我只想要一个不同名称的列表,以便我可以在加入之前手动纠正它们 . 我想要一个基于d...
  • 5 votes
     answers
     views

    tidyr传播功能不会返回日期

    对不起相对R新手在这里尝试用dplyr做更多 . 我有一个带有id列的大数据框,end(日期为POSIXct)和D(代码结果~6种不同类型),示例如下: id end D 1143 1996-08-10 KT 1148 2000-07-27 KT 1150 2004-07-02 KT 1158 2001-11-03 KT 我想为结果KT创建一个子集 . 在这个结果中,许多...
  • 2 votes
     answers
     views

    计算每个站点的标签并在R中创建汇总表[重复]

    这个问题在这里已有答案: How do I get a contingency table? 6个答案 Faster ways to calculate frequencies and cast from long to wide 3个答案 以下是与我的数据集类似的部分内容: require(dplyr) alldata site date percent_rank ...
  • 81 votes
     answers
     views

    dplyr总结:相当于“ . drop = FALSE”以保持输出中长度为零的组

    使用 summarise 和 plyr 的 ddply 函数时,默认情况下会删除空类别 . 您可以通过添加 .drop = FALSE 来更改此行为 . 但是,当 summarise 与 dplyr 一起使用时,这不起作用 . 还有另一种方法可以在结果中保留空类别吗? 这是假数据的一个例子 . library(dplyr) df = data.frame(a=rep(1:3,4), b=rep(...
  • 0 votes
     answers
     views

    用于拆分数据集的dplyr解决方案,但将ID保留在相同的拆分中

    我正在寻找一个dplyr或tidyr解决方案来将数据集拆分为n个块 . 但是,我不希望任何单个ID进入多个块 . 也就是说,每个ID应该只出现在一个块中 . 例如,想象下面的“测试”是一个ID变量,数据集有许多其他列 . test<-data.frame(id= c(1,2,3,4,4,4,4,4,6,7,8,9,9,9,9,10), val = 1:16) out...
  • 3 votes
     answers
     views

    如何在dplyr中用不等列(反向toString)分隔

    我正在使用调查数据尝试在一个列中进行多个响应 . 问题是可能有1-5个答案,用逗号分隔 . 我怎么转这个: df <- data.frame( splitThis = c("A,B,C","B,C","A,C","A","B","C") ) > df spl...
  • 2 votes
     answers
     views

    R:用dplyr对行顺序求和

    根据here和here这些类似问题的精神,我希望能够在 data_frame 中对一系列列进行求和并创建一个新列: df_abc = data_frame( FJDFjdfF = seq(1:100), FfdfFxfj = seq(1:100), orfOiRFj = seq(1:100), xDGHdj = seq(1:100), jfdIDFF = seq(1:100),...
  • 2 votes
     answers
     views

    填充数据框中的缺失值

    嘿,我需要填写数据框的缺失值 . 逻辑很简单,如果 M[i, j + 1] 中有值,则使用 M[i, j + 1] ,否则使用 M[i, j - 1] . 但是棘手的是我需要在每行的最后一个非na值之后填充从行开始到列的缺失值,而不仅是非空单元格附近的单元格 . 这是数据 a1 <- c('a',9,8,rep(NA,5)) a2 <- c('b',NA,NA,NA,NA,3,NA,...
  • 6 votes
     answers
     views

    使用组内的dplyr完成填充data.frame中的缺失值

    我正在尝试填充数据框中的缺失值,但我不想要所有可能的变量组合 - 我只想基于三个变量的分组来填充:coursecode,year和week . 即使在查看了Using tidyr::complete with group_by和https://blog.rstudio.org/2015/09/13/tidyr-0-3-0/之后我就开始工作了 我有观察员在一年中的特定星期收集不同课程的数据 . 例如...
  • 2 votes
     answers
     views

    tidyr 0.4.0的模型公式错误无效

    在尝试使用tidyr版本0.4.0拟合线性模型时,我收到消息 Error: invalid model formula in ExtractVars . 我在之前的会话中运行了这个确切的代码而没有错误,但是已经更改了一些库信息,所以我想知道这是否可能是问题 . 这是我正在尝试运行的代码: library(gapminder) library(dplyr) library(tidyr) libra...
  • 2 votes
     answers
     views

    dplyr 0.5:使用分组排列()

    我有很多用dplyr 0.4.3编写的代码,它依赖于分组的arrange()函数 . 截至0.5版本,安排不再适用分组 . 这个决定让我感到困惑,因为这使得arrange()与其他dplyr动词不一致,如果需要ungrouped,用户可以在arrange()之前取消组合() . 我希望也许在arrange()中有一个参数来保留groups_by行为,但是唉! 因此,我必须重写我的分组安排 . 此时...
  • 1 votes
     answers
     views

    计算外部数据帧中的行数

    请考虑以下问题:我有两个数据帧 cases 和 events . 对于每个 case ,可以有几个 events (1:n) . events $ caseId(外键)指的是$ id(主键)的情况: cases events ------ ------ id id date caseId var1 date var2 ...
  • 0 votes
     answers
     views

    R:DPLYR包:调用自定义函数时bind_rows失败

    使用DPLYR和TIDYR,我正在尝试创建一个整洁的数据集版本,其中行可能会丢失,具体取决于某些列的数据 . 我创建了一个函数,在新的tbl_df(data.frame)中返回缺少的行(通过使用默认数据创建它们)(我对它进行了单元测试,并且它可以使用特定数据) . 但是,当从'bind_rows'调用它时,我收到以下错误:data.frame中的错误(a,b,c,...:找不到对象'A' . 例如...
  • 0 votes
     answers
     views

    R dplyr / tidyr:使用其他观察数据“突变”新列

    我正在尝试使用dplyr / tidyr函数创建两个新变量,方法是使用先前但相关行的数据 . 在我的示例中,我有一个data.frame,其中包含ID,YEAR和AMOUNT的数据(见下文) . ID YEAR AMOUNT A 2000 4 B 2000 4 A 2001 2 B 2001 3 A ...
  • 0 votes
     answers
     views

    在R [duplicate]中使用已聚集的data.frame上的聚集

    这个问题在这里已有答案: Replicate each row of data.frame and specify the number of replications for each row 5个答案 我在R中有一个data.frame,它包含年龄,长度和每个长度组中个人的总数 . 我想得到每个年龄组的长度的均值和标准差,我觉得用dplyr这样做最容易 . 但是,我似乎无法弄清楚如何 ga...
  • 0 votes
     answers
     views

    R Data.table用于改变列中值分隔值的表吗? [重复]

    这个问题在这里已有答案: Split comma-separated strings in a column into separate rows 4个答案 我有这样的数据 > a<-data.table(col1=c(1,2,3),col2=c("1;2","11;22","111;333")) > a co...
  • 1 votes
     answers
     views

    为什么group_by不能在dplyr中使用max(colSums)

    我想知道每个国家,小学,中学和高中的最长持续时间(因为每年,持续时间可能不一样) . 我首先使用group_by country,并使用colSum,但我获得的值是所有的max(colSum),这意味着group_bu根本不起作用 . 我做了一些研究,我已经脱离了'plyr' . 其实,如果我试试 df1 <- mtcars %>% group_by(cyl, gear) %&gt...
  • 1 votes
     answers
     views

    在R中重塑这个数据帧的最简单方法是什么? [重复]

    这个问题在这里已有答案: Reshaping multiple sets of measurement columns (wide format) into single columns (long format) 7个答案 假设我有以下宽/杂乱的数据帧: df1 <- data.frame(ID = c(1, 2), Gender = c("M","F&q...
  • 0 votes
     answers
     views

    使用ggplot2实现成对组合

    我正在尝试使用ggplot2来完成单个变量的所有成对散点图 . 类似于默认对()的东西,但我想用ggplot2操纵刻面和着色 . 这是我目前在ggplot2中尝试的失败示例 iris_melt = melt(iris) ggplot(iris_melt, aes(value,value)) + geom_point() + facet_wrap(variable~variable) 我想要的是...
  • 0 votes
     answers
     views

    用列表中的字符填充NA

    我有一些数据如下: library(tidyr) library(data.table) thisdata <- data.frame(numbers = c(1,3,4,5,6,1,2,4,5,6) ,letters = c('A','A','A','A','A','B','B','B','B','B')) otherdata <- d...

热门问题