小编Ali*_*vil的帖子

distr 包-如何在一个窗口中绘制两个图?

distr用来形成以下分布:

library(distr)

G1 <- Gammad(shape=1.64, scale=0.766)
G2<- Gammad(shape=0.243, scale=4.414)
Run Code Online (Sandbox Code Playgroud)

现在为了比较这两个分布,我需要在一个窗口中绘制它们,但我不知道如何。我试过了,ggplot但显然它不适用于伽马函数。

plot r ggplot2

2
推荐指数
1
解决办法
142
查看次数

为每个类和每个ID聚合一个变量的值

我有以下数据框:

id <- c(1,1,1,1,1,2,2,2,2)
spent <- c(10,10,20,10,10,5,5,5,20)
period <- c("f","c","c","v","v","f","c","c","v")
mean.spent <- c(10,15,15,10,10,5,5,5,20)
df <- data.frame(id,spent,period,mean.spent)
Run Code Online (Sandbox Code Playgroud)

我想要的是汇总每个时期每个Id的平均花费如下:

id  f  c  v    
1   10 15 10
2   5  5  20
Run Code Online (Sandbox Code Playgroud)

你能帮我做一下吗?

r aggregation

2
推荐指数
1
解决办法
97
查看次数

R求和数据透视表

对于数据框如下

id<-c(1,1,2,3,3,2)
p<-c(10,0,22,34,0,0)
df<-data.frame(id,p)
Run Code Online (Sandbox Code Playgroud)

我需要一个总结表

id   p
1    10
2    22
3    34
Run Code Online (Sandbox Code Playgroud)

这实际上是每个id的p的总和.我可以用'dcast'来获得这个吗?

r

1
推荐指数
1
解决办法
4160
查看次数

如何加快团队内的累积总和?

我有以下数据框:

id<-c(1,1,1,1,1,3,3,3,3)
spent<-c(10,20,30,40,50,60,70,80,90)
date<-c("11-11-07","11-11-07","23-11-07","12-12-08","17-12-08","11-11-07","23-11-07","23-   11-07","16-01-08")
df<-data.frame(id,date,spent)
df$date2<-as.Date(as.character(df$date), format = "%d-%m-%y")


 id     date spent      date2
1  1 11-11-07    10 2007-11-11
2  1 11-11-07    20 2007-11-11
3  1 23-11-07    30 2007-11-23
4  1 12-12-08    40 2008-12-12
5  1 17-12-08    50 2008-12-17
6  3 11-11-07    60 2007-11-11
7  3 23-11-07    70 2007-11-23
8  3 23-11-07    80 2007-11-23
9  3 16-01-08    90 2008-01-16
Run Code Online (Sandbox Code Playgroud)

我需要每天计算总和spent,id并将其包含在框架工作中,如下所示:

 id     date spent      date2    sum.spent
1  1 11-11-07    10 2007-11-11    10
2  1 11-11-07    20 2007-11-11 …
Run Code Online (Sandbox Code Playgroud)

aggregate r

1
推荐指数
1
解决办法
244
查看次数

查找每个ID的最大值,按日期分组

可能重复:
如何加快组内的累积总和?

在以下数据框中

id<-c(1,1,1,1,1,3,3,3,3)
spent<-c(10,20,30,40,50,60,70,80,90)
date<-c("11-11-07","11-11-07","23-11-07","12-12-08","17-12-08","11-11-07","23-11-07","23-       11-07","16-01-08")
df<-data.frame(id,date,spent)
df$date2<-as.Date(as.character(df$date), format = "%d-%m-%y")

  id     date spent      date2
1  1 11-11-07    10 2007-11-11
2  1 11-11-07    20 2007-11-11
3  1 23-11-07    30 2007-11-23
4  1 12-12-08    40 2008-12-12
5  1 17-12-08    50 2008-12-17
6  3 11-11-07    60 2007-11-11
7  3 23-11-07    70 2007-11-23
8  3 23-11-07    80 2007-11-23
9  3 16-01-08    90 2008-01-16
Run Code Online (Sandbox Code Playgroud)

我需要找到每天spent每个的最大值,id并在单独的列中记录如下:

  id     date spent      date2   sum.spent
1  1 11-11-07    10 2007-11-11    20
2  1 11-11-07 …
Run Code Online (Sandbox Code Playgroud)

r

1
推荐指数
1
解决办法
1280
查看次数

在R中创建具有日期格式的<=>条件

我有以下数据框:

id<-c(1,2,3,4)
date<-c("23-01-08","01-11-07","30-11-07","17-12-07")
df<-data.frame(id,date)
df$date2<-as.Date(as.character(df$date), format = "%d-%m-%y")
Run Code Online (Sandbox Code Playgroud)

在我的表格的第四列中,我想根据日期将我的数据划分为校准和有效,以便在日期<= 2007-12-16的情况下,第四列应该calib是否应该是valid

我写了以下几行:

for ( i in 1:4)
if (df[i,3]<=2007-12-16)(df[i,4]="calib")else (df[i,4]="valid")
Run Code Online (Sandbox Code Playgroud)

第一个问题是,通过执行此命令,第4列中的所有单元格都将变为valid,并且似乎无法正确处理日期条件.所以我的第一个问题是如何解决这个问题.

第二个问题是我的真实数据框有600000行,执行这个命令需要几个小时.我想知道是否有任何方法可以更快地执行此命令并具有完整的CPU容量.

谢谢!

parallel-processing datetime r

0
推荐指数
1
解决办法
2824
查看次数