如何使用数据帧值在python中创建3d数组?
我试图使用股票价格数据集创建一个3d数组,将30分钟的时间帧数据作为3d数组中的一个块。我的代码如下:如何使用数据帧值在python中创建3d数组?,python,multidimensional-array,Python,Multidimensional Array,我试图使用股票价格数据集创建一个3d数组,将30分钟的时间帧数据作为3d数组中的一个块。我的代码如下: x = [] for i in range(30,10000): x.append([]) for j in range(i-30,i): x[i-30].append([]) for k in range(0,4): x[i-30][j].append(df_prices.iloc[j,k]) 但这表明了一个错误 -
x = []
for i in range(30,10000):
x.append([])
for j in range(i-30,i):
x[i-30].append([])
for k in range(0,4):
x[i-30][j].append(df_prices.iloc[j,k])
但这表明了一个错误
---------------------------------------------------------------------------
IndexError Traceback (most recent call last)
<ipython-input-186-3509d316acf5> in <module>
5 x[i-30].append([])
6 for k in range(0,4):
----> 7 x[i-30][j].append(df_prices.iloc[j,k])
8 #break
IndexError: list index out of range
我可以得到数组大小(1,30,4)的第一个块。但是我想通过迭代函数30到10000来获得9970的所有块。那我该怎么做呢?终于明白了:
x = []
for i in range(30,10000):
x.append([])
for j in range(i-30,i):
x[i-30].append([])
for k in range(0,4):
x[i-30][j].append(df_prices.iloc[j,k])
break