• Pandas DF上的累积值,对于负的累积值重置为零

    我在Pandas DF中有一个按时间顺序分组的表。我正在尝试在组内创建一个运行总和,但条件是运行总和不能为负,即当运行总和变为负时,列单元格值重置为零,并继续运行总和计算以保持完整性和数据质量。 我已经将cumsum()与groupby()函数一起使用,但是似乎无法将累积值即时重置为零。我也查看了下面的线程,但这与稍微不同的问题有关: Pandas dataframe - running sum with reset 以下是代码(包含我一直在使用的示例数据): group = ['A', 'A', 'A',...
  • 如何根据列条件求和?

    我正在尝试为以下数据框的名称分组一个累积量: df = pd.DataFrame( columns = ['Name','Status']) df['Name'] = ['Anton','Anton','Anton','Anton','Bev','Bev','Bev','Bev','Chad','Chad','Chad','Chad'] df['Status'] =[1,1,1,1,1,1,0,1,0,0,1,1] df 但是,仅当status列等于1时,才应求和,否则,该值应沿用以赋予附加列,如下所...
  • 基于对象状态的条件累积和

    我正在寻找基于对象状态的条件累积总和。当统计信息为“新”时,我想对所有以前的行求和,但是当状态为“旧”时,重置累计总和。我也想遍历组ID。 因此,在下面的示例中: set.seed(5) df <- data.table(ID=c(rep("A",10),rep("B",10)),time=c(seq(1,10),seq(1,10)), Status=sample(c("New","Old"),20,replace = TRUE)) df ID time Statu...
  • 按组反向累计总和

    这是我的数据: ID<-rep(1:5, length.out=15 ) b<-cumsum(1:10) c<-cumsum(1:10)*2 bc<-c(b,c) e<-cbind(ID,bc) e<-as.data.frame(e) e$ID<-as.factor(e$ID) 我想要第三列,其中包含从中得出累计和的值。这是预期的结果。 我知道我需要按ID分组,但是不知道该使用哪个函数来执行我想要的操作。 f<-e %>% group_by(ID)...
  • 使用两列按组对行进行排序

    假设我有以下df data <- data.frame(ID = c(1,1,1,1,1,1,1,2,2,2,2,3,3,3), Value = c(1,1,0,1,0,1,1,1,0,0,1,0,0,0), Result = c(1,1,2,3,4,5,5,1,2,2,3,1,1,1)) 如何从前两列获取列结果? 我尝试了使用rle,seq,cumsum和cur_group_id的不同方法,但无法轻松获取Result列
  • 分组依据和累计和

    我有以下DF。我想创建两个新列Prev_Project e Prev_Success,对于每个创建者,上一个项目的数量和上一个成功的数量分别应该是。 Desired output df = pd.DataFrame({'creator':['Mark','Mark','Paul','Paul','Paul'],'outcome':[1,1,1,0,1], 'Target_Prev_Project':[0,1,0,1,2], 'Target_Prev_Success':[0,1,0,1,1]}) 我知道如何...
  • r过滤dataframe group_by,并找到cumusm

    我有以下方式的df id = c(1, 1, 2, 2, 3, 4, 4, 4) val = c("AAA", "BBB", "BBB", "CCC", "AAA", "BBB", "AAA", "CCC") df = data.frame(id= id, val=val) 我要删除至少一个不包含给定字符串的任何组(此处为“ AAA”), 然后按组查找“ AAA”的出现总数。 在该示例中,组id = 4中的第一个元素“ BBB”被删除,因为它出现在“ AAA”之前。 输出看起来像 id = c( 1,...
  • 它如何给我r中的章节号?

    tidy_books<-austen_books() %>% group_by(book)%>% mutate(linenumber=row_number(), chapter=cumsum(str_detect(text, regex("^chapter [\\divxlc]", ignore_case = TRUE)))) 有人可以解释cumsum和str_detect在这里如何一起工作以给我章节编号吗?
  • 创建一个函数并使用循环来按日期和ID计算累积

    我有一个练习来编写一个带有cumsum的函数,然后用于通过id和date计算累积值。例如,我在下面创建一个数据框 df = data.frame(“ date” = c(“ 1/1/2020”,“ 1/1/2020”,“ 1/1/2020”,“ 2/1/2020”,“ 2/1/2020 “,” 2/1/2020“,” 3/1/2020“,” 3/1/2020“,” 3/1/2020“),” id“ = c(” A“,” B“,” C”,“ A”,“ B”,“ C”,“ A”,“ B”,“ C”),“ val...
  • 具有功能和循环的cumsum

    我有一个练习来编写一个具有cumsum的函数,然后用于通过id和date计算累积 例如,我在下面创建一个数据框 df=data.frame("date"=c("1/1/2020","1/1/2020","1/1/2020","2/1/2020","2/1/2020","2/1/2020","3/1/2020","3/1/2020","3/1/2020"), "id"=c("A","B","C","A","B","C","A","B","C"),"val"=c(5,6,7,8,4,5,6,3,4)) da...
  • 具有字符条件的熊猫sum()

    我有以下数据框: >>>variable value 0 var1 0.25 1 var2 0.11 2 tt_var1 0.01 3 tt_var2 0.0004 4 tt_var3 0.07 5 bb_var5 0.102 6 var_3 0.45 7 bb_var74 0.23 我想使用cumsum()来对列“ 1”中的值求和,但仅适用于特定变量:我想对数据帧中所有以tt开头的变量和所有以bb开头的...
  • 将前一行的值累加到后一行,累加到R

    我试图将上一行的最后一个值添加到后续的值。例如 tmat = rbind(c(1,2,3), c(1,2,3), c(1,2,5)) tmat = as.data.frame(tmat) tmat V1 V2 V3 1 1 2 3 2 1 2 3 3 1 2 5 变成 V1 V2 V3 1 1 2 3 2 4 5 6 3 7 8 11 我尝试了各种方法,但对此却有一个盲点。 new=list() for(i in 2:nrow(tmat)){ ne...
  • 熊猫:反向累积总和的过程

    我有一个简单的大熊猫意甲,就像这样: st 0 74 1 91 2 105 3 121 4 136 5 157 此Serie的数据是累积总和的结果,所以我想知道pandas函数是否可以“撤消”该过程,并返回一个新的Serie,如: st result 0 74 74 1 91 17 2 105 14 3 121 16 4 136 15 5 157 21 result [0] = st [0],...
  • 没有分组依据的列上的累计百分比

    我有以下数据框: import pandas as pd data = [['2020-08', 'Peter', 0.5], ['2020-08', 'Tom', 0.29], ['2020-08', 'Kurt', 0], ['2020-09', 'Peter', 0], ['2020-09', 'Tim', 0.79], ['2020-09', 'Kurt', 0]] df1 = pd.DataFrame(data, columns = ['Date', 'Name', 'Breakage'])...
公告

《从零开始开发BBS》课程上线啦,快来跟着我一步步搭建属于你的BBS吧。

课程地址:https://www.shiyanlou.com/courses/1436
9折优惠邀请码: ZHwfIjb1

该课程会带领大家一步步的了解并熟悉Go语言开发,如果你是一个Go语言初学者,或者正准备学习Go语言,那么这个课程非常适合你。如果你熟练掌握了本课程中的知识点,相信你就已经入门Go语言开发,并能胜任日常的开发工作了。