首页 > 解决方案 > 计算多维特征的皮尔逊系数

问题描述

我有一个熊猫数据框,其中每一行对应一个样本,每一列代表一个特征。现在我的列之一是一个字符串列,其中包含“这是一个红苹果”之类的文本。如何将其转换为可以为此数据帧计算 pearson 相关矩阵的形式?同样,我还有另一列包含标识符列表。

下面是一个例子:

 id     text                   list_of_ids      score1 score2
 1.    "This is An apple"      [1, 2, 3, 4]     4.6.   1.0
 2.    "This is An orange"     [1, 5, 6]        5.2    1.4

标签: pandascorrelationpearson

解决方案


利用 -

pd.concat([df, df['col1'].str.get_dummies(sep=' ')], axis=1)

输出

    col1    col2    col3    col4    An  This    apple   is  orange
0   This is An apple    [1, 2, 3, 4]    4.6 1.0 1   1   1   1   0
1   This is An orange   [1, 5, 6]   5.2 1.4 1   1   0   1   1

然后,您可以删除不想使用的列.drop


推荐阅读