You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将4维NumPy数组变量一对一映射到含值列的5列Pandas DataFrame

四维贸易土地足迹数组转DataFrame操作指南

现有记录贸易土地足迹的4维NumPy数组FP_fd_Merc,四个维度顺序为进口方、产品、需求部门、出口方,需要构建为Pandas DataFrame,前四列依次对应四个维度的实际名称,第五列为土地足迹数值,每行可承载完整的单条贸易土地足迹信息。

你提供的数组片段查询代码及返回结果如下:

In: FP_fd_Merc[0,:,:,CountryNo,:].shape
Out: (28, 4, 200, 7)

实现步骤

  • 提前准备四个维度的索引转实际名称的映射列表,列表长度和对应维度的尺寸完全匹配:
    • importer_labels:进口方维度映射列表
    • product_labels:产品维度映射列表
    • sector_labels:需求部门维度映射列表
    • exporter_labels:出口方维度映射列表
  • 生成四个维度的全组合索引并展平,同时将原数组数值展平,拼接为DataFrame:
    import numpy as np
    import pandas as pd
    
    # 读取原数组各维度尺寸
    n_imp, n_prod, n_sec, n_exp = FP_fd_Merc.shape
    
    # 生成和原数组维度顺序匹配的全索引网格
    imp_idx, prod_idx, sec_idx, exp_idx = np.meshgrid(
        np.arange(n_imp),
        np.arange(n_prod),
        np.arange(n_sec),
        np.arange(n_exp),
        indexing='ij'
    )
    
    # 拼接生成DataFrame
    land_footprint_df = pd.DataFrame({
        '进口方': importer_labels[imp_idx.flatten()],
        '产品': product_labels[prod_idx.flatten()],
        '需求部门': sector_labels[sec_idx.flatten()],
        '出口方': exporter_labels[exp_idx.flatten()],
        '土地足迹数值': FP_fd_Merc.flatten()
    })
    

生成后的DataFrame可直接通过字段筛选查询任意组合的贸易土地足迹数据,比如要查「阿根廷出口的小麦被德国家庭消费产生的土地足迹」,只需对应筛选四个维度字段即可快速定位数值。

内容的提问来源于stack exchange,提问作者akif

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 10:00:03