代码之家  ›  专栏  ›  技术社区  ›  Andrew Bannerman

从矩阵生成数据帧-指定列类型

  •  0
  • Andrew Bannerman  · 技术社区  · 7 年前

    好吧,假设我有一系列数组:

    data_one = ["dog","cat"]
    data_two = [1,2]
    data_three = ["1/1/2018","1/2/2018"]
    

    我把它们做成矩阵

    m = hcat(data_one,data_two,data_three)
    

    并转换为df

    df = DataFrame(m)
    showcols(df)
    

    对于输出:

    julia> showcols(df)
    3×5 DataFrames.DataFrame
    │ Row │ variable │ eltype │ nmissing │ first    │ last     │
    ├─────┼──────────┼────────┼──────────┼──────────┼──────────┤
    │ 1   │ x1       │ Any    │ 0        │ dog      │ cat      │
    │ 2   │ x2       │ Any    │ 0        │ 1        │ 2        │
    │ 3   │ x3       │ Any    │ 0        │ 1/1/2018 │ 1/2/2018 │
    

    当我构建这个数据框架时,如何指定每列的类型??

    col1 should be String 
    col2 = Int 
    col3 = String
    
    1 回复  |  直到 7 年前
        1
  •  2
  •   Bogumił Kamiński    7 年前

    DataFrame [String, Int, String]

    DataFrame([([String, Int, String][i]).(m[:,i]) for i in 1:size(m, 2)])
    

    DataFrame([[v for v in m[:,i]] for i in 1:size(m, 2)])
    
    推荐文章