如何使用Julia中的字符串命名数据框中的列?

Fer*_*enc 7 string dataframe julia

我试图找到一种方法来使用来自excel或抓取网络的字符串来命名数据框的列.

那么如何将"colname"转换为下面的colname?

df = DataFrame(colname = [1, 2])
Run Code Online (Sandbox Code Playgroud)

我试过了

df = DataFrame(symbol("colname") = [1, 2])
Run Code Online (Sandbox Code Playgroud)

要么

df = DataFrame([1, 2], [symbol("colname")])
Run Code Online (Sandbox Code Playgroud)

和许多其他组合,但没有成功.我看到与基于字符串列名删除列有关的问题,但首先没有关于命名列的问题/答案.

dic*_*koa 10

也许你可以使用该names!功能分两步尝试这样的事情.

using DataFrames
newname = ["colname1", "colname2"]
df = DataFrame(v1 = [1, 2], v2 = [3, 4])
names!(df.colindex, map(parse, newname))
df
# 2x2 DataFrames.DataFrame
# | Row | colname1 | colname2 |
# |-----|----------|----------|
# | 1   | 1        | 3        |
# | 2   | 2        | 4        |
Run Code Online (Sandbox Code Playgroud)

下面是版本JuliaDataFrames.jl我用

versioninfo()
# Julia Version 0.4.0-dev+6991
# Commit 811a977 (2015-08-26 04:02 UTC)
# Platform Info:
#   System: Linux (x86_64-unknown-linux-gnu)
#   CPU: Intel(R) Core(TM) i7-3520M CPU @ 2.90GHz
#   WORD_SIZE: 64
#   BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Sandybridge)
#   LAPACK: libopenblas
#   LIBM: libopenlibm
#   LLVM: libLLVM-svn


Pkg.installed("DataFrames")
# v"0.6.9"
Run Code Online (Sandbox Code Playgroud)