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

时间:2015-08-30 02:03:34

标签: string dataframe julia

我正在尝试使用来自excel或抓取网络的字符串来命名数据框列的方法。

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

df = DataFrame(colname = [1, 2])

我试过

df = DataFrame(symbol("colname") = [1, 2])

df = DataFrame([1, 2], [symbol("colname")])

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

1 个答案:

答案 0 :(得分: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        |

以下是我使用的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"