【问题标题】:MCA() returns "array must not contain infs or nans"MCA() 返回“数组不得包含 infs 或 nans”
【发布时间】:2021-03-17 05:02:41
【问题描述】:

我有一个由 1 和 0 组成的数据框,它们充当元数据来描述主数据集的某些特征的属性。作为数据探索的一部分,我在数据帧上运行以下代码,以将这些特征标签表达为 2D 图。

mca = prince.MCA()
mca_mtx = mca.fit(tags_df).transform(tags_df) 

但我在fit 期间收到以下错误:

数组不能包含 infs 或 nans

检查数据框后,我发现整个数据集中没有 infs 或 nans。所以问题一定是别的。

有人知道如何解决这个问题吗?

【问题讨论】:

    标签: python pandas pca mca


    【解决方案1】:

    显然是known bug。问题在于数据帧 tags_df 的值,因为 1.0 和 0.0 在 mca 算法期间产生 inf 或 nan。

    我尝试将1.0 和0.0 更改为True 和False(布尔类型)但没有成功。但是,字符串版本起到了作用,即"True" 和"False"。所以下面一行解决了我的问题:

    tags_df.replace({0: "False", 1: "True"}, inplace = True)
    

    【讨论】:

      猜你喜欢
      • 2013-10-13
      • 2016-06-20
      • 2013-01-06
      • 2021-02-14
      • 2021-05-28
      • 2017-12-25
      • 2016-03-09
      • 2016-01-31
      • 2021-07-07
      相关资源
      最近更新 更多