【问题标题】:Get back to DataFrame after df.as_matrix()在 df.as_matrix() 之后返回 DataFrame
【发布时间】:2018-08-03 16:41:27
【问题描述】:

我在 pandas 中使用数据集。

在某些时候,我将它用作矩阵 (df.as_matrix()),然后我进行了一些转换(使用 sklearn),然后我想回到 DataFrame。

我怎样才能从df.as_matrix() 回到df 这是最简单的方法并保留索引和列名?

【问题讨论】:

    标签: pandas numpy scikit-learn


    【解决方案1】:

    考虑数据框df

    df = pd.DataFrame(1, list('xyz'), list('abc'))
    
    df
    
       a  b  c
    x  1  1  1
    y  1  1  1
    z  1  1  1
    

    as_matrix 给你:

    df.as_matrix()
    
    array([[1, 1, 1],
           [1, 1, 1],
           [1, 1, 1]])
    

    回到数据框是完全合理的

    pd.DataFrame(df.as_matrix())
    
       0  1  2
    0  1  1  1
    1  1  1  1
    2  1  1  1
    

    但是您丢失了indexcolumn 信息。

    如果你还有这些信息

    pd.DataFrame(df.as_matrix(), df.index, df.columns)
    
       a  b  c
    x  1  1  1
    y  1  1  1
    z  1  1  1
    

    你又回到了你开始的地方。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多