【问题标题】:Transforming pandas dataframe into a list of tuples considering index将 pandas 数据框转换为考虑索引的元组列表
【发布时间】:2022-01-23 18:43:57
【问题描述】:

我有一个具有如下结构的 pandas 数据框:

rowNo | Column 1  | Column 2 | Column 3
0     |   Value   | 123.4    | 1
1     |   Value2  | 111.2    | 3

我需要将其转换为一个元组列表,将rowNo 列视为索引,从而产生这种结构(rowNo0 开头,但目标列表应将开头移至1):

[(1, ['Value',123.4,1]), (2, ['Value2',111.2,3])]

非常感谢任何意见。

【问题讨论】:

    标签: python python-3.x pandas dataframe


    【解决方案1】:

    你也可以使用:

    data = list(zip(df.index+1, df.values.tolist()))
    

    OUTPUT

    [(1, ['Value', 123.4, 1]), (2, ['Value2', 111.2, 3])]
    

    【讨论】:

      【解决方案2】:

      * unpackingto_numpy 的一些列表理解:

      result = [(rowNo+1, [*rest]) for rowNo, *rest in df.reset_index(drop=True).to_numpy()]
      

      【讨论】:

        【解决方案3】:

        让我们试试

        out = list(df.assign(rowNo = df['rowNo']+1).set_index('rowNo').agg(list,1).iteritems())
        Out[95]: [(1, ['   Value   ', 123.4, 1]), (2, ['   Value2  ', 111.2, 3])]
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2016-02-14
          • 1970-01-01
          • 2016-12-17
          • 2017-03-12
          • 2021-11-14
          • 2018-02-01
          • 2022-01-07
          相关资源
          最近更新 更多