我正在尝试将数据帧中的一列从 float 转换为字符串。我已经尝试过
df = readtable("data.csv", coltypes = {String, String, String, String, String, Float64, Float64, String});
但是我被投诉了
syntax: { } vector syntax is discontinued
我也尝试过
dfB[:serial] = string(dfB[:serial])
但它也不起作用。因此,我想知道在 Julia 中更改列数据类型的正确方法是什么。
谢谢
最佳答案
在您第一次尝试时,Julia 会告诉您问题所在 - 您无法使用 {}
创建向量,您需要使用 []
。另外,关键字参数的名称应该是 eltypes
而不是 coltypes
。
在第二次尝试时,您没有 float ,而是有一个 float 向量。因此,要更改类型,您需要更改所有元素的类型。在 Julia 中,向量上的元素运算由“点”语法概括,例如string.(collect(dfB[:serial]))
。当前需要首先将 DataArray 转换为普通数组 - 如果 DataArray 包含 NA,则这将失败。恕我直言,DataFrames 界面仍然相当不稳定,所以预计会出现一些像 ATM 这样令人头疼的问题。
关于dataframe - 如何在 Julia 中将列数据类型从浮点更改为字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43605432/