小编典典

Pandas 将数据帧转换为元组数组

all

我已经使用 pandas 操作了一些数据,现在我想批量保存回数据库。这需要我将数据帧转换为元组数组,每个元组对应于数据帧的“行”。

我的 DataFrame 看起来像:

In [182]: data_set
Out[182]: 
  index data_date   data_1  data_2
0  14303 2012-02-17  24.75   25.03 
1  12009 2012-02-16  25.00   25.07 
2  11830 2012-02-15  24.99   25.15 
3  6274  2012-02-14  24.68   25.05 
4  2302  2012-02-13  24.62   24.77 
5  14085 2012-02-10  24.38   24.61

我想将其转换为元组数组,例如:

[(datetime.date(2012,2,17),24.75,25.03),
(datetime.date(2012,2,16),25.00,25.07),
...etc. ]

关于如何有效地做到这一点的任何建议?


阅读 196

收藏
2022-07-09

共1个答案

小编典典

list(data_set.itertuples(index=False))

从 17.1 开始,上面将返回一个namedtuples 列表

如果您想要一个普通元组的列表,请name=None作为参数传递:

list(data_set.itertuples(index=False, name=None))
2022-07-09