首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R:数据清理

R:数据清理
EN

Stack Overflow用户
提问于 2014-03-30 17:03:14
回答 1查看 783关注 0票数 0

我希望有人能帮我清理我的数据使用R。

样本数据:

代码语言:javascript
复制
seqno   rectyp  ps04
1       1   
1       1   
1       89  
1       89  
2       1       0
2       1       1
2       1   
2       90  
2       89  
3       1   
3       1   
3       1   
3       90  
3       90  
3       89      1
3       89      5
3       89      6
3       89  

我想要做的是为某个ps04==1值寻找值rectype==1seqno值。一旦找到,它将用值seqno填充整个行的值1。预期产出将是:

代码语言:javascript
复制
seqno   rectyp  ps04
1       1   
1       1   
1       89  
1       89  
2       1       1
2       1       1
2       1       1
2       90      1
2       89      1
3       1   
3       1   
3       1   
3       90  
3       90  
3       89      1
3       89      5
3       89      6
3       89  

谢谢你的帮忙!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-30 17:26:26

首先看看哪些行符合t$ps04==1 & t$rectyp==1。为这些行获取seqno,然后使满足条件的所有行的i相等于TRUE

代码语言:javascript
复制
> i <- t$seqno %in% t$seqno[t$ps04==1 & t$rectyp==1]
> i
 [1] FALSE FALSE FALSE FALSE  TRUE  TRUE  TRUE  TRUE  TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
> t$ps04[i] <- 1 # set values to 1
> t
   seqno rectyp ps04
1      1      1   NA
2      1      1   NA
3      1     89   NA
4      1     89   NA
5      2      1    1
6      2      1    1
7      2      1    1
8      2     90    1
9      2     89    1
10     3      1   NA
11     3      1   NA
12     3      1   NA
13     3     90   NA
14     3     90   NA
15     3     89    1
16     3     89    5
17     3     89    6
18     3     89   NA
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22746954

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档