I was trying to create a 3d array using a stock price dataset to get data of 30 min of time frame as one block in my 3d array. I coded as below:
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])
but that shows an error
---------------------------------------------------------------------------
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
but when I break the first for function as follows
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
I can get the first block of the array size of (1,30,4). But I want to get all the blocks of 9970 by iterating the function 30 to 10000. So how can I do that?