【问题标题】:Append multiple pandas columns into a list将多个熊猫列附加到列表中
【发布时间】:2021-03-21 15:31:12
【问题描述】:

我有一个包含多列的 df。我想获取我的 df 的一个子集并将这些列附加到一个列表中。都是字符串。

样本df

A         B       C       D       E       F
word1   word2   word3   word4   word5   word6   
word7   word8   word9   word1   word2   word3 
word4   word5   word6   word7   word8   word9 
word1   word2   word3   word4   word5   word6 
word7   word8   word9   word1   word2   word3

因此,我会以 C、E 和 F 列为例,将它们作为列表附加在一起。

期望的输出

list = [word3, word9, word6, word3, word9, 
        word5, word2, word8, word5, word2, 
        word6, word3, word9, word6, word3]

提前致谢!非常感谢!

【问题讨论】:

    标签: pandas string list dataframe


    【解决方案1】:

    pandas.melttolist 一起使用:

    df[["C", "E", "F"]].melt()["value"].tolist()
    

    输出:

    ['word3',
     'word9',
     'word6',
     'word3',
     'word9',
     'word5',
     'word2',
     'word8',
     'word5',
     'word2',
     'word6',
     'word3',
     'word9',
     'word6',
     'word3']
    

    【讨论】:

      【解决方案2】:

      numpy.ravel 的解决方案:

      L = np.ravel(df[['C','E','F']].to_numpy().T).tolist()
      print (L)
      ['word3', 'word9', 'word6', 'word3', 'word9', 
       'word5', 'word2', 'word8', 'word5', 'word2', 
       'word6', 'word3', 'word9', 'word6', 'word3']
      

      或喜欢@sammywemmy 解决方案:

      L = np.ravel(df[['C','E','F']].to_numpy(), order="F").tolist()
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-11-12
        • 2019-10-01
        • 2015-06-16
        • 2019-11-07
        • 2014-07-11
        • 1970-01-01
        • 2014-01-03
        • 1970-01-01
        相关资源
        最近更新 更多