我以为这是一个简单的问题,但我一直在努力解决它。
我有一个4列的dataframe(打开,高,低,关闭)。
我需要反复选择
- 100次
- 一批75行
- 每个具有4列。使得最终形状为(100,75,4)
我试过np.append, np.stack, np.dstack, np.concatenate
。都不管用
在np.append
中我得到一个形状(7500,4)
在np.stack
中,在第二次迭代中,所有输入数组必须具有相同的形状(因为在第一次堆栈之后,原始数组的形状是不同的)。
我的最后一个代码与np.stack
(不把其他尝试):
for i in range (100):
print(i)
if (i==0):
temp_array=timeseries[['Open','High','Low','Close']].iloc[i:i+75].to_numpy()
else:
temp_temp_array=np.stack([temp_array,timeseries[['Open','High','Low','Close']].iloc[i:i+75].to_numpy()])
temp_array=temp_temp_array
print(temp_array.shape)
似乎stackoverflow/internet没有答案(或者可能是我没有问正确的问题)。
1条答案
按热度按时间sqserrrh1#
正如Quang所建议的,你可以在这里使用步幅来提高速度和记忆力(!)效率:
编辑:
要屏蔽某些列,可以先在嵌套框上执行:
或者,为了提高速度,你可以使用numpy索引查找: