假设我在下面的DataFrame中有一个数据集:
df=pl.DataFrame({
'x':['a','a','b','b'],
'y':['b','c','c','a'],
'value':[3,5,1,4]
})
df
shape: (4, 3)
┌─────┬─────┬───────┐
│ x ┆ y ┆ value │
│ --- ┆ --- ┆ --- │
│ str ┆ str ┆ i64 │
╞═════╪═════╪═══════╡
│ a ┆ b ┆ 3 │
│ a ┆ c ┆ 5 │
│ b ┆ c ┆ 1 │
│ b ┆ a ┆ 4 │
└─────┴─────┴───────┘
现在,我想在此数据框中添加一列,该列将包含倒数
价值.我将inverse的值定义为inverse(x, y) == value(y, x)
.例如,来自
上面的例子是inverse (a, b) == value(b, a) == 4
.
如果value(y, x)
不存在,则inverse(x, y)
将被赋予缺省值
价值0
.
换句话说,我想添加一个inverse
专栏,就像我最后得到的那样
大概是这样的:
shape: (4, 4)
┌─────┬─────┬───────┬─────────┐
│ x ┆ y ┆ value ┆ inverse │
│ --- ┆ --- ┆ --- ┆ --- │
│ str ┆ str ┆ i64 ┆ i64 │
╞═════╪═════╪═══════╪═════════╡
│ a ┆ b ┆ 3 ┆ 4 │
│ a ┆ c ┆ 5 ┆ 0 │
│ b ┆ c ┆ 1 ┆ 0 │
│ b ┆ a ┆ 4 ┆ 3 │
└─────┴─────┴───────┴─────────┘
这能以一种简单而最佳的方式实现吗?最好是用表情?
多谢了.