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

如何将含sample列的数据集转为矩阵以在R中运行prcomp?

解决方法

步骤1:修复数值列格式

你的area列用逗号作为千分分隔符,trnsp列用逗号作为小数点,需要先将它们转换为数值类型:

# 假设原始数据框名为df
df$area <- as.numeric(gsub(",", "", df$area))
df$trnsp <- as.numeric(gsub(",", ".", df$trnsp))

步骤2:设置行名并移除sample列

将sample列的值指定为数据框行名,随后删除原sample列:

rownames(df) <- df$sample
df <- df[, !names(df) %in% "sample"]

步骤3:转换为矩阵

此时数据框已满足要求,直接转换为矩阵即可:

data_matrix <- as.matrix(df)

现在运行prcomp(data_matrix)就能正常执行主成分分析了。

内容的提问来源于stack exchange,提问作者Gonzalo de Quesada

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 20:25:48