![](/img/trans.png)
[英]Equivalent of R data.table rolling join in Python and PySpark
[英]What is the Python equivalent to R data.table column creation?
我正在将我的 R 脚本转换为 python。 在 J 步骤中创建 r data.table 所做的新列是否有类似的过程? 下面是我在 R 中的示例代码:
dat[,Returned_on_time:= ifelse(Contract_End_Date==Estimated_In_Date,'Yes','No')]
谢谢
感谢@furas 提供使用 numpy 的快速解决方案。
df["Returned_on_time"] = np.where(df["Contract_End_Date"] == df["Estimated_In_Date"], 'Yes', 'No')
您的 R 示例说明了data.table
快速就地生成新列。
下面显示了使用 python 数据表在j
插槽中就地创建等效的datatable
from datatable import dt,f,update
dat=dt.Frame({"Contract_End_Date":["2022-01-02", "2022-04-15", "2022-12-19"],
"Estimated_In_Date":["2022-04-26", "2022-04-15", "2022-11-30"]
})
dat[:, dt.update(Returned_on_time = dt.ifelse(f.Contract_End_Date == f.Estimated_In_Date, "Yes", "No"))]
Output:
| Contract_End_Date Estimated_In_Date Returned_on_time
| str32 str32 str32
-- + ----------------- ----------------- ----------------
0 | 2022-01-02 2022-04-26 No
1 | 2022-04-15 2022-04-15 Yes
2 | 2022-12-19 2022-11-30 No
[3 rows x 3 columns]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.