重命名Julia DataFrames中的多个列



我有以下Julia dataframe;

data_test = DataFrame(Time = 1:2, X1 = [0,1], X2 = [10,5])

我有一个名单,如下;

technology = ["oil", "gas"]

如何使用列表重命名列X1和X2(不包括时间列)。我可以手动完成,但是,要重命名数百列,这不是一个有效的选择。本质上,我要找的是一种将名字列表映射到列的方法。任何有效的解决方案都是非常受欢迎的。

您可以尝试这样做(适用于Julia 1.7.2):

data_test = DataFrame(Time = 1:2, X1 = [0,1], X2 = [10,5])
new_names = Dict(
:X1=>"oil",
:X2=>"gas",
)
rename!(data_test, new_names)

从JuliaDiscourse收到的解决方案。

rename!(data_test, ["X$i" => tech for (i, tech) in enumerate(technology)])

最新更新