2013-03-04 43 views
0

我已经导入一个数据集到R &已经发现了一个异常值。我想对这个最初导入的数据进行特定的替换。具体来说,我的数据如下所示:如何将R中的数据框的值与来自数据框另一部分的值进行取代?

Adhesive TestCond Lab Speci.no Sample.id Wood.fail Shear.str 
1  W  BDF A ABW-01   1  100 707.99296 
2  W  BDF A ABW-02   2  100 557.61752 
3  W  BDF A ABW-03   3  100 759.13431 
4  W  BDF A ABW-04   4  100 84.70696 
5  W  BDF A ABW-05   5  100 519.56020 
6  W  BDF A ABW-06   6  100 502.13246 

它有大约3,000行。

FPInnovation <- read.csv() 

的Wood.fail值是有问题的是下面的值

Adhesive TestCond Lab Speci.no Sample.id Wood.fail Shear.str 
6  W  BDF D DBW-07   7  0 23.68061 

的Wood.fail柱内的0值已被发现是:该数据是使用以下命令导入一个错误。其他值0可能不是。因此,我只想在上面的行中进行替换。

Adhesive TestCond Lab Speci.no Sample.id Wood.fail Shear.str 
31  W  BDF D DBW-31   31  90 237.3734 
+2

如果您知道行号('row.id'):'FPInnovation $ Wood.fail [row.id] < - 90' – Arun 2013-03-04 21:05:14

+0

谢谢你的快速反应!这是一个简单的修复。现在,我在考虑数据集大得多的情况。如果我不知道行号并想要替换Wood.fail中Speci.no ==“DBW-07”的值,该怎么办?我可以考虑如何在SQL中执行此操作。在R中有类似的方法吗? – 2013-03-04 21:12:47

+0

谢谢你的收获。在我自己的挖掘过程中错过了这个。 – 2013-03-04 22:09:37

回答

3

这仅仅是:我如何与被以下行(低于90替代0以上)持有的价值代替0的具体Wood.fail值(也就是上面提到的)索引。它的工作原理是这样的:

FPInnovation$Wood.fail[LOGICAL TEST] <- updatedvalue 

所以专门为Speci.no == “DBW-07”

FPInnovation$Wood.fail[FPInnovation$Speci.no=="DWB-07"] <- updatedvalue 

这将选择和更新满足逻辑测试行。

0
row = .... #specify the row number 

FPInnovation$Wood.fail[row] <- 90 
相关问题