您现在的位置是:网站首页> 编程资料编程资料
python多维列表总是只转为一维数组问题解决_python_
2023-05-26
633人已围观
简介 python多维列表总是只转为一维数组问题解决_python_
正文
# 从X和Y中取出相应步长对应的数组并保存至x_data和y_data中 x_data = [] y_data = [] for i in range(len(K) - 24*n + 1): x_data.append(X[i:i + 24*n, :]) y_data.append(Y[i + 24 * n:i + 24 * n + 24 * n, :]) # 将x_data和y_data转为ndarray n_train_hours = 24*365 x_train = np.array(x_data)[: n_train_hours, :, :] y_train = np.array(y_data)[: n_train_hours, :, :] 12345678910
上述代码最后一排报错

该报错是指y_data转为array之后变成了一维数组,而我要取三维的数据,两者维度不符合。
于是我做了这样一个工作:
# 检查y_data中的每个二维数组的shape for i in range(len(y_data)): print(y_data[i].shape) 123
得到如下输出:

原本y_data当中应该所有数组是同样的shape,即(216,1),但通过循环打印发现shape不一致,导致多维列表转成了一维数组,出现了上述报错。
最终发现问题来源于循环,改为以下代码:
x_data = [] y_data = [] for i in range(len(Y) - 24 * n - 24 * n + 1): x_data.append(X[i:i + 24*n, :]) y_data.append(Y[i + 24*n:i + 24*n + 24*n, :]) 12345
以上就是python多维列表总是只转为一维数组问题解决的详细内容,更多关于python多维列表转一维数组的资料请关注其它相关文章!
您可能感兴趣的文章:
相关内容
- python3 如何解压缩.gz文件_python_
- 详解Python中range()与xrange()的区别_python_
- Python中Pygame模块的详细安装过程_python_
- anaconda打开闪退的解决过程_python_
- Python操作csv文件之csv.writer()和csv.DictWriter()方法的基本使用_python_
- python sklearn与pandas实现缺失值数据预处理流程详解_python_
- Python 读取 .gz 文件全过程_python_
- Python数据分析之matplotlib绘图详解_python_
- Python加载文件内容的两种实现方式_python_
- python转换wrf输出的数据为网页可视化json格式_python_
