如何在pandas数据框中拆分元组列?

如何在pandas数据框中拆分元组列?,第1张

如何在pandas数据框中拆分元组列?

您可以通过

pd.Dataframe(col.tolist())
在该列上执行此 *** 作:

In [2]: df = pd.Dataframe({'a':[1,2], 'b':[(1,2), (3,4)]})In [3]: df Out[3]:    a       b0  1  (1, 2)1  2  (3, 4)In [4]: df['b'].tolist()         Out[4]: [(1, 2), (3, 4)]In [5]: pd.Dataframe(df['b'].tolist(), index=df.index)      Out[5]:    0  10  1  21  3  4In [6]: df[['b1', 'b2']] = pd.Dataframe(df['b'].tolist(), index=df.index)In [7]: df Out[7]:    a       b  b1  b20  1  (1, 2)   1   21  2  (3, 4)   3   4

注意:在早期版本中,建议使用此答案

df['b'].apply(pd.Series)
代替
pd.Dataframe(df['b'].tolist(),index=df.index)
。这也很好(因为它使每个元组组成一个Series,然后将其视为一个数据帧的一行),但是比
tolist
版本更慢/使用了更多的内存,如此处其他答案所述(感谢@denfromufa)

我更新了此答案,以确保最可见的答案具有最佳的解决方案。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5143426.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-17
下一篇 2022-11-18

发表评论

登录后才能评论

评论列表(0条)

保存