python - 我怎样才能让我的目标来自独特的价值观?
问题描述
所以我有多个列和行的大型 csv 文件。在我的 PCA 图中,我选择 City 列作为我的目标值。我如何编写一个程序,可以从列中选择独特的城市作为目标。
import pandas as pd
X = pd.read_csv('ANNCitydata.csv')
# load dataset into Pandas DataFrame
X1 = X.drop(['ID','City'], axis=1)
y = pd.read_csv('ANNCitydata.csv', usecols=["City"])
from sklearn.decomposition import PCA
pca = PCA(n_components=2)
principalComponents = pca.fit_transform(X1)
principalDf = pd.DataFrame(data = principalComponents
, columns = ['principal component 1', 'principal component 2'])
finalDf = pd.concat([principalDf, y[['City']]], axis = 1)
import matplotlib.pyplot as plt
fig = plt.figure(figsize = (10,10))
ax = fig.add_subplot(1,1,1)
ax.set_xlabel('Principal Component 1', fontsize = 15)
ax.set_ylabel('Principal Component 2', fontsize = 15)
ax.set_title('2 component PCA', fontsize = 20)
targets = ['Houston', 'St. Louis', 'Waterloo', 'Columbia', 'Rosario']
colors = ['r', 'g', 'b', 'c', 'm']
for target, color in zip(targets,colors):
indicesToKeep = finalDf['City'] == target
ax.scatter(finalDf.loc[indicesToKeep, 'principal component 1']
, finalDf.loc[indicesToKeep, 'principal component 2']
, c = color
, s = 100)
ax.legend(targets)
ax.grid()
如您所见,目前我正在选择目标城市。但我希望程序自己做到这一点。
解决方案
这应该会产生一系列独特的价值。
targets = y.drop_duplicates()
推荐阅读
- c - 为什么周期性中断会有时间差异?
- ios - 如何使用 ObservedObject 作为 Picker 中的选择以及 SwiftUI 中的默认选择
- javascript - 联系表格提交电子邮件不发送
- javascript - 如何在 Node.js 上将函数从一个文件导出到另一个文件?
- javascript - 如何在提交 RobinHerbots / Inputmask 时取消屏蔽
- node.js - 尝试实现 NodeJS Gmail API 示例
- jquery - div 上的样式阻止触发 jquery 事件
- ruby-on-rails - 通过数据库中的 url 在 rails 中显示视频
- ios - Crashlytics:没有缓存设置 | 跳过报告
- javascript - 防止动态添加的选择改变其他 div 行为