【问题标题】:Visualize (plot) Dataset csv using PCA on Jupyter Notebook在 Jupyter Notebook 上使用 PCA 可视化(绘制)数据集 csv
【发布时间】:2020-04-21 21:51:39
【问题描述】:

我有以下代码,它显示来自 csv 文件的垃圾邮件/火腿邮件列表...

data = pd.read_csv('spam.csv', encoding='latin-1', delimiter='\t', header=None) data

我想通过使用 PCA 来显示我的 csv 数据集的图(集群),类似这样(例如,绿色是垃圾邮件和蓝色火腿)

【问题讨论】:

    标签: python jupyter-notebook pca


    【解决方案1】:

    您可以将您的“火腿”和“垃圾邮件”标签映射到类别,然后使用matplotlib.pyplot.scatter 进行散点图。这使得将来添加新标签也相对容易。

    import matplotlib.pyplot as plt
    
    # map 'ham' and 'spam' labels to numbers
    df['label_num'] = df['ham/spam'].map({ 'ham': 0, 'spam': 1 })
    
    # scatter plot
    plt.scatter(df['x'], df['y'], cmap='rainbow', c=df['label_num'])
    

    【讨论】:

    • 你应该在 x 和 y 上放什么?
    • 您最初打算在 x 和 y 轴上绘制什么?从您提供的数据框中不清楚
    • 我的 csv 文件总共有 4,827 条火腿消息和 747 条垃圾邮件,我想用 2 种不同的颜色在图上显示它们的频率。为此,我有 2 列,ham/spam、message 和 label_num 列(# map 'ham' and 'spam' labels to numbers)... thnx :)
    • 也许条形图比散点图更适合您的数据?
    • 好吧...我想我不太明白这个问题。谢谢帮助!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-28
    • 1970-01-01
    • 1970-01-01
    • 2018-03-05
    • 1970-01-01
    • 2020-12-12
    • 2022-06-21
    相关资源
    最近更新 更多