如果行号等于给定值,则从列中返回一个值

时间:2019-02-17 13:40:14

标签: r

我有一个包含两列的数据框,我们称它们为“值”和“差异”。列diff包含随机行号。 我想通过从满足一个条件的“值”列中选择值来创建向量,即找到其中diff列中给定的数字等于数据帧的行号的值。 我应该在for循环中尝试还是有更简单的解决方案?

1 个答案:

答案 0 :(得分:0)

到目前为止,收集样本数据和您的工作将很有帮助,但是由于这看起来非常基础,因此我认为您的意思是:

related_events = Event.objects.filter(venue=self)
        for event in related_events:  # Trigger an update on related events. This will bump the modified timestamp
            # Modify the event here
            event.save()

无需循环或其他工具,简单的R子设置。

编辑-请检查这是否正确理解了您的问题,以及结果是否符合您的期望:

# crate a simple data frame along the lines of your question
x <- data.frame( value = c( 1,3,5,7,9 ), diff = c( 2, 1, 3, 9, 5 ) )
> x
  value diff
1     1    2
2     3    1
3     5    3
4     7    9
5     9    5

# select records where the row name ( = row number ) of the data frame
> x[ rownames( x ) == x$diff, ]
  value diff
3     5    3
5     9    5