【发布时间】:2021-08-21 15:33:09
【问题描述】:
我是 python 的初学者,尝试使用 pandas、sklearn.preprocessing、sklearn.decomposition 和 Matplotlib.pyplot 创建一个 2 分量 PCA 图。
我的数据框非常大,涉及到不同种类植物的特征,有很多变量(>100 列),我想比较其中一个特征/列(茎长)对数据的方差。茎长列由浮点数组成,大小范围从 0 到 75cm 左右。
我想绘制一个 PCA,比较茎长 >40cm 和茎长
我一直使用以下网站作为guide for the PCA plot。
我已经写了如下代码:
import pandas as pd
from sklearn.preprocessing import StandardScaler
from sklearn.decomposition import PCA
import matplotlib.pyplot as plt
df = pd.read_csv("plant_data.csv")
x = StandardScaler().fit_transform(x)
plt.style.use("seaborn-darkgrid")
pca = PCA(n_components=2)
principalComponents = pca.fit_transform(x)
principalDf = pd.DataFrame(data = principalComponents,
columns = ['principal component 1', 'principal component 2'])
finalDf = pd.concat([principalDf, df[['stem_length']]], axis = 1)
如何设置参数为stem_length >40和stem_length
【问题讨论】:
-
您想为词干长度添加新功能吗?
-
我不太确定 - 我不完全理解所涉及的术语,因为我几乎是一个完整的初学者。一个特征本质上是一个参数,对吧?所以当我创建情节时,会有一组数据点根据茎长>40cm的植物和另一组数据点根据茎长
-
@Billy 你了解 PCA 方法的用途吗?
-
当您绘制 PC 时,您并不是在“比较特征的方差”。如果您查看您引用的链接,PC 会捕获原始数据中方差的某个比率,但它们不是方差
-
你能说清楚你想画什么吗?
标签: python pandas matplotlib scikit-learn pca