我想根据同一数据框中其他变量的值更改(或保留)我的数据框的值。我一直在寻找和回答,但没有成功。这是我拥有的数据库的一个示例:
date day VM id
12/01/2013 4 133 1
12/01/2013 4 163 1
13/01/2013 5 143 1
13/01/2013 5 123 1
14/01/2013 6 90 1
14/01/2013 6 190 1
15/01/2013 7 922 1
15/01/2013 7 952 1
16/01/2013 1 13 1
16/01/2013 1 25 1
17/01/2013 2 333 1
17/01/2013 2 123 1
18/01/2013 3 143 1
18/01/2013 3 169 1
19/01/2013 4 203 1
19/01/2013 4 133 1
每个数字代表一天(1:星期一,2:星期二,...),每天都有数百个数据,而且信息是 8 天,所以会有一天重复(但在不同的日期)。当我应用摘要时,它为我提供了混合重复日期数据的信息,我想避免这种情况,我的想法是将使用的最后一天(重复的一天)更改为数字 8,但重复的日期按 id 和我有很多数据。到目前为止,我已经尝试过:
unicos<-unique(data$id)
data_corr<-NULL
for(j in 1:length(unicos))
subset<-data[which(data$id==unicos[j]),]
subset$day1<-NULL
times<-0
vector<-NULL
for(i in 1:(dim(subset)[1])){
if((subset$day[i]<-subset$day[1]) && if (subset$date[i]<-subset$date[1])){
vector<-c(vector, i)
times<-times+1
subset$day1[i]<-subset$day[1]
}
subset$day1<-8
}
Basal_corr<-rbind(Basal_corr, subset)
}
第一个“for”意味着当时应用条件一个 id。第二部分是困难的部分。我想要做的是,如果 [i] 行中的那一天与第一行中的那一天相同(因为它是要重复的那一天)然后去检查日期,如果日期也一样 我想将原始日期值保留在名为 day1 的新列中,如果日期不同,则 day1 值将为 8。我使用 Basal_corr<-rbind(Basal_corr, subset) 来跟踪所有id 所做的更改。每次我尝试运行它时都会收到一个“错误”,我真的不知道发生了什么我是一个 R 新手,这超出了我迄今为止所知道的范围。