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

Google Sheets:将宝可梦属性二维表转换为一维列表

宝可梦属性克制表结构转换方案

需求明确

原始表格结构:

  • 首行表头:18个单一攻击属性(如「火」「水」「草」等)
  • 主体数据行:324行,每行对应一组防御方双属性组合(如「火+水」「火+草」等),并附带该组合对18种攻击属性的克制数值

目标输出:
生成共5832行(18³)的一维列表,每行包含三个核心字段:攻击方属性、防御方双属性、克制数值


Excel Power Query 实操步骤

  1. 选中原始表格的全部数据区域,点击顶部「数据」选项卡 → 「从表格/区域」,将数据导入Power Query编辑器
  2. 在编辑器中,选中所有代表攻击属性的列(除了第一列的防御双属性列),点击「转换」选项卡 → 「逆透视列」→ 「逆透视其他列」
  3. 此时表格会自动转换为三列:防御方双属性、属性、值,手动将列名修改为防御方双属性、攻击方属性、克制数值
  4. 调整列顺序为「攻击方属性」→「防御方双属性」→「克制数值」,点击「关闭并上载」,即可得到目标一维列表

Python Pandas 实现代码

适合有编程基础的用户快速批量处理:

import pandas as pd

# 读取原始表格(假设文件名为 pokemon_type_chart.xlsx,第一列是防御双属性,首行是攻击属性表头)
df = pd.read_excel("pokemon_type_chart.xlsx")

# 执行逆透视转换,将攻击属性列转为行维度
melted_df = df.melt(
    id_vars=["防御方双属性"],  # 保留作为标识的列
    var_name="攻击方属性",       # 转换后攻击属性列的名称
    value_name="克制数值"        # 转换后克制数值列的名称
)

# 调整列顺序为需求的三维组合顺序
result_df = melted_df[["攻击方属性", "防御方双属性", "克制数值"]]

# 导出到新Excel文件
result_df.to_excel("pokemon_type_3d_list.xlsx", index=False)

逻辑验证

18种攻击属性 × 324种防御双属性组合 = 5832行,完全匹配需求的三维组合输出。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 01:01:15