首页 > 解决方案 > 获取相关性的降序键列表

问题描述

我尝试获取与该列相关性得分最高的前 5 名的名称'price'

这是我的代码:

ls = list(df.corrwith(df['price']))
ls.sort(reverse=True)
ls[0:5]

输出:

[0.9999999999999999,
 0.31555576200285607,
 0.29866047751549785,
 0.2731839437705133,
 0.2673960209310168]

如果我运行此代码:

df[df.columns[1:]].corr()['price']

我会得到这样的输出:

host_since                                     -0.047803
host_response_rate                              0.077262
host_is_superhost                              -0.020062
host_total_listings_count                       0.116733
host_has_profile_pic                           -0.002491
host_identity_verified                         -0.041795
...

有什么办法可以得到前5名的名字吗?

标签: pythonlistdataframecorrelation

解决方案


这是我在@SahilDesai 评论的帮助下的解决方案:

df[df.columns[1:]].corr()['price'].sort_values(ascending=False)[:6]

输出:

price           1.000000
accommodates    0.315556
bedrooms        0.298660
cleaning_fee    0.273184
beds            0.267396
bathrooms       0.262596

推荐阅读