如何解决使用 Dataframes 进行类似 DanfoJS Apply 的操作
首先,感谢任何愿意帮助我的人,并为这个简单的问题道歉,如果它没有写在正确的地方,但我很难找出答案。
问题是,想象一下下面的数据框:
let data = [["R",100],["L",200],["R","NULL"]]
let df = new dfd.DataFrame(data,{columns:["side","value"]})
df.print()
我想要的是基于对一个或多个其他列执行的操作,以类似 Pandas 的方式向该 DF 添加一个新列。例如,假设我想创建一个新列 result,它采用以下规则:
if (side === "R" && value !== "NULL" && value > 0) {
result = value;
} else {
result = 0;
}
想法是获得以下DF:
在 Pandas 中,这可以通过以下方式轻松完成:
fn = lambda row: return row.value if row.side == "R" and row.value != "NULL" and row.value > 0 else 0
df["result"] = df.apply(fn,axis=1)
但是,由于 Danfo 在 df.apply
中指定轴时不支持 JS 函数,我发现自己正在尝试实施一些奇怪的解决方法,这些方法不会在任何地方结束
有什么方法可以让我使用丹佛来实现这一点?我必须执行像这样的几个操作来在我的 Dataframe 中创建几列,每一列都有自己的规则并取决于其他列(可以是一列或多列),我希望不必遍历整个 df 行使用经典的 for 循环排,最终没有充分利用 Danfo
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。