作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个看起来像这样的表:
Price Discount
$30 0
$39 0
$31 0
$20 1
$20 1
$20 1
$39 0
$28 0
我想改变一个现行价格列,该列将在整个折扣期内显示折扣期之前的价格,结果如下:
Price Discount PrevailingPrice
$30 0 $30
$39 0 $39
$31 0 $31
$20 1 $31
$20 1 $31
$20 1 $31
$29 0 $29
$28 0 $28
在 excel 中,我只会告诉它获取列中的先前值,但您无法获取正在通过 mutate 构建的列中的值。我已经盯着这个看了好几个小时了。我很困惑。
最佳答案
在基础 R 中你可以这样做:
df$prevailingPrice = with(df, Price[(!Discount)*seq(Price)+ Discount*cumsum(!Discount)])
Price Discount prevailingPrice
1 $30 0 $30
2 $39 0 $39
3 $31 0 $31
4 $20 1 $31
5 $20 1 $31
6 $20 1 $31
7 $39 0 $39
8 $28 0 $28
关于r - 在有条件的数据框中结转值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64796489/
我是一名优秀的程序员,十分优秀!