代码之家  ›  专栏  ›  技术社区  ›  Yneedtobeserious

如何操作pandas数据帧?

  •  0
  • Yneedtobeserious  · 技术社区  · 6 年前

    我有一个包含以下列(具有现有数值索引)的大数据DATAFRAM:

        points | variety
        ----------------
    1       97 | Chardonnay
    17      67 | Cabernet Sauvignon
    12      70 | Cabernet Sauvignon
    8       97 | Chardonnay
    

    我想将其转换为一个新的数据帧,其中:

    • 这个 points 列作为新索引
    • 中每个唯一条目对应一列 variety
    • 名为columns的新变体中的值,该值包含原始变体发生每个变体的频率 点数 原始表中的值。

    例如,从上面的例子:

        Chardonnay | Cabernet Sauvignon
        -------------------------------
    97           2 | 0
    67           0 | 1
    70           0 | 1
    

    请注意,原始索引与输出无关。下面是一个显示更完整示例的图像: Pandas DataFrame Snapshot 是的。

    0 回复  |  直到 6 年前
        1
  •  2
  •   Chris Adams    6 年前

    你可以用 Pandas.crosstab 为此:

    pd.crosstab(index=df.points, columns=df.variety)
    

    [出局]

    variety  Cabernet Sauvignon  Chardonnay
    points                                 
    67                        1           0
    70                        1           0
    97                        0           2