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

如何从pandas DataFrame中选取指定列构建矩阵

pandas选取DataFrame指定列构建矩阵实操

操作流程

  • 第一步:导入pandas库,加载目标csv文件拿到DataFrame对象
import pandas as pd
# 把路径替换成你本地存储similarity.csv的实际路径即可
df = pd.read_csv("similarity.csv")
  • 第二步:选取需要的Count、Topic两列
    直接通过列名列表索引就能拿到只包含目标列的子数据集,建议选完先打印前几行确认结果正确,避免列名不匹配报错:
# 传入列名组成的列表,批量选取多列
selected_cols = df[["Count", "Topic"]]
# 打印前5行校验选取结果
print(selected_cols.head())

小提示:如果选列报错,先跑print(df.columns)打印全量列名,检查是不是列名有大小写偏差、前后带空格的问题。

  • 第三步:基于选中的两列构建目标矩阵
    根据实际使用场景,最常见的矩阵构建有两类:
    1. 构建可直接用于建模的二维数值特征矩阵
      Topic列是文本类别的话,先转成数值编码,再和Count列拼接转成矩阵格式即可:
# 把Topic列的文本类别转成数值编码
selected_cols["Topic_code"] = selected_cols["Topic"].astype("category").cat.codes
# 转成numpy格式的二维矩阵
feature_matrix = selected_cols[["Count", "Topic_code"]].values
# 打印矩阵维度和内容校验
print(f"矩阵维度:{feature_matrix.shape}")
print(feature_matrix)
  1. 构建Topic与Count的交叉聚合矩阵
    如果需要生成行索引为Topic、值为对应Count聚合结果的矩阵,用透视表实现即可,聚合规则可以按需调整:
# 按Topic分组,对Count做求和聚合,最后转成矩阵格式
agg_matrix = pd.pivot_table(
    selected_cols,
    values="Count",
    index="Topic",
    aggfunc="sum" # 要算均值就改成"mean",要计数就改成"count"
).values

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 09:51:17