为了账号安全,请及时绑定邮箱和手机立即绑定

基于另一列的数据框中列的模式

基于另一列的数据框中列的模式

跃然一笑 2021-11-30 16:01:37
想象一下,我有一个名为“国家”的数据框,其中包含多个列,包括国家及其各自的特质。Country   IdiosyncraciesBrazil    We love footballFrance    We love loveItaly     We love PizzaItaly     We love PizzaItaly     We love GellatoBrazil    We love festivalsItaly     We love PizzaFrance    We love breadFrance    We love breadFrance    We love breadItaly     We love GellatoItaly     We love PizzaBrazil    We love football对于每个国家,我想将模式响应(特质)提取到另一个数据帧中,如下所示Country    Top comment        Brazil     We love football    France     We love bread       Italy      We love Pizza       这是我试过的一段代码grouped = countries('Country')['Idiosyncracies'].mode()[0])但是,我没有得到 (3,2) 数据帧,而是收到一条错误消息TypeError: 'DataFrame' object is not callable
查看完整描述

1 回答

?
交互式爱情

TA贡献1712条经验 获得超3个赞

使用GroupBy.apply与Series.iat用于选择第一个值:


df = (countries.groupby('Country')['Idiosyncracies']

               .apply(lambda x: x.mode().iat[0])

               .reset_index())

print (df)

  Country    Idiosyncracies

0  Brazil  We love football

1  France     We love bread

2   Italy     We love Pizza


查看完整回答
反对 回复 2021-11-30
  • 1 回答
  • 0 关注
  • 132 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信