通过合并月份和年份列,将4D数组转换为Python中的3D

时间:2015-10-05 05:33:39

标签: python reshape

我有一个4D数组,有两个空间方向,一个月列和一年列。它在每个空间点和每个月给出一个标量值。我想将此数组重新整形为3D,以便将值定义为x,y,month,year,而不是将其定义为x,y,month,其中现在月份列从1-36开始表示没有年份列而不是1-12,年份列为1-3。我将如何在Python中执行此操作?谢谢!

2 个答案:

答案 0 :(得分:0)

基本方法是将新列编码为:

new_month = old_month + 12*(old_year-1)

这将您的3年规模转换为连续数月编号为1-36的月份。我无法向您展示如何对此进行编码,因为(1)您还没有给我们参考代码,所以我不知道您的4D阵列是如何构建的; (2)由于我希望您已阅读帮助文档,我们不是编码服务。

答案 1 :(得分:0)

添加值为char *fromSecondChar = strdup (string + 1); if (fromSecondChar == NULL) doSomethingIntelligent(); : free (fromSecondChar); // at some point. 的新列,然后放弃或忽略您的年份和月份列。 详细信息取决于您的数据当前是如何构建的,如果它是一个numpy数组,这将是2行代码!