将数组和元组元素转换为 Pandas 数据框中的列 [重复]

Posted

技术标签:

【中文标题】将数组和元组元素转换为 Pandas 数据框中的列 [重复]【英文标题】:Convert array and tuple elements to columns in a Pandas dataframe [duplicate] 【发布时间】:2019-08-14 14:14:28 【问题描述】:

我有一个看起来像这样的 Pandas 数据框(两行示例):

    cadd_scores_vec        freqs_vec     CLASS
0  [0.001, -4.053424]  (0.0, 0.0, 0.0)      0
1  [0.001, -3.654581]  (0.0, 0.0, 0.0)      0

我需要将所有内容解构为单个标量列,如下所示:

   col1   col2       col3 col4 col5 col6
0  0.001  -4.053424  0.0  0.0  0.0  0
1  0.001  -3.654581  0.0  0.0  0.0  0

我不太关心新的列名;重要的是将行排列成如上所示的纯向量。

我怎样才能实现它?

【问题讨论】:

【参考方案1】:

pd.concat 的两种方法:

pd.concat([pd.DataFrame(df[col].values.tolist()) for col in df.columns], axis=1, ignore_index=True)

pd.concat([df[col].apply(pd.Series) for col in df.columns], axis=1, ignore_index=True)

ignore_index=True 只是确保您没有得到重复的列名。

【讨论】:

以上是关于将数组和元组元素转换为 Pandas 数据框中的列 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

将行值转换为火花数据框中的列数组

从 pandas 数据框中的元组列中删除元素

使用 pyspark 将 Spark 数据框中的列转换为数组 [重复]

遍历 pandas 数据框中的列和行并将字符串转换为浮点数

如何使用pyspark将具有多个可能值的Json数组列表转换为数据框中的列

如何将 numpy 数组存储在 Pandas 数据框的列中?