首页 > 解决方案 > 将一个数据集分成多行,在单行中包含多列 - 熊猫

问题描述

我有一个完整的数据集堆叠在一行中。这个数据集应该有 7 列和 360 行。

例如,第一个位置是:

df=[1, 14/02/2013, 3.305,55, 206,05, 25, 3.536,60, 349.027,78, 2, 14/03/2013, 3.299,07, 205,59, 25, 3.529,66 , 348.055,56, 3, 14/04/2013, 3.292,59, 205,13,​​ 25, 3.522,72, 347.083,34, 4, 14/05/2013, 3.286,11, 204,67, 25, 3.515 ,78, 346.111,12, 5, 14/06/2013, 3.279,63, 204,22, 25, 3.508,84, 345.138,90]

我需要它们:

我怎样才能在 python/pandas 中做到这一点?

谢谢。

标签: pythonpandasdataset

解决方案


您可以使用 numpy array_split() 将列表的 len 除以所需的列数。

import pandas as pd
import numpy as np

d = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21]

pd.DataFrame(np.array_split(d,len(d)/7))

输出

    0   1   2   3   4   5   6
0   1   2   3   4   5   6   7
1   8   9  10  11  12  13  14
2  15  16  17  18  19  20  21

推荐阅读