dataframe - 如何使用 Julia DataFrames 命名由 do-form 转换产生的列?
问题描述
由于某些原因,我必须使用以下do
形式(块形式?)DataFrames.transform
df = DataFrame(:a => [i for i in 1:10])
transform(df) do d
[d[i, :a] * 10 for i in 1:nrow(d)]
end
Row │ a x1
│ Int64 Int64
─────┼──────────────
1 │ 1 10
2 │ 2 20
3 │ 3 30
. | . ..
这一切都很好,但我希望将新专栏称为x1
. 除了将其重命名为事后之外,我在文档中看不到明显的方法。有没有一种方法可以使用命名列(甚至可能不止一个?)而不是命名列xn
?
解决方案
您可以返回 aDataFrame
或 a NamedTuple
:
df = DataFrame(:a => [i for i in 1:10])
transform(df) do d
(result=[d[i, :a] * 10 for i in 1:nrow(d)],)
end
transform(df) do d
DataFrame(result=[d[i, :a] * 10 for i in 1:nrow(d)])
end
推荐阅读
- google-cloud-platform - Google Cloud Kubernetes 节点带宽
- express - 我已经安装了 express 和 express-generator 但它仍然无法正常工作但是我可以看到 node_modules 中的两个文件夹
- javascript - 将 Firestore 可观察对象投射到自定义对象
- sqlite - React native 在 sqlite 中看不到新表
- sql-server - 如何从数据库中填充复选框
- javascript - 如何在react js中单击按钮时触发用户飞行员(用户入职软件)触发功能
- digital-signature - 在比特币源代码的哪个文件中完成了签名验证过程?
- reactjs - React-ckeditor5:CKEditorError:datacontroller-set-non-existent-root:尝试在不存在的根上设置数据
- python - 如何清理最不常用的 python 包?
- python - if 条件中的语法错误。不等号突出显示