【问题标题】:Panads groupby and save certain columns to CSV [duplicate]Pandas groupby并将某些列保存到CSV [重复]
【发布时间】:2018-09-14 08:13:43
【问题描述】:

我正在读取包含 Employer、City、State、Zipcode 和 Jobtitle 列的 CSV。

要求是按 Employer + City 分组,统计结果并将四列(Employer、City、Zipcode 和 Count)写入 CSV。

这是我到目前为止所做的,

data = pd.read_csv("jobs.csv")
data.groupby(["Employer", "City"]).count()

这给了我:

Employer    City       State    Zipcode   Jobtitle 
Emp1      Cincinnati     1        1          1   
Emp2      Delaware      14        0         14   
Emp3      Akron          1        0          1 

我想要的是:

Employer    City       Zipcode    Jobcount
Emp1      Cincinnati    12345         1  
Emp2      Delaware      22112        14  
Emp3      Akron         34567         1 

Jobcount 显示 Employer + City 组合的工作数量。

【问题讨论】:

  • 12345 是邮政编码。
  • 您是否希望每个城市/雇主有 1 个邮政编码?
  • 看起来你需要data.groupby(['Employer', 'City', 'Zipcode'])['Jobcount'].count() .. 如副本中所述。
  • 这不是一个重复的问题。 data.groupby(['Employer', 'City', 'Zipcode'])['Jobcount'].count() 给出错误 KeyError: 'Column not found: Jobcount'
  • 因为你的df中的列是Jobtitle

标签: python pandas


【解决方案1】:

如果您希望每个员工/城市有 1 个邮政编码,您可以这样做:

data.groupby(['Employer', 'City', 'Zipcode']).agg({'Jobtitle': 'size'})
data.columns = ['Employer', 'City', 'Zipcode', 'Jobcount']

【讨论】:

  • 这对我有用,只需稍作修改。谢谢。
猜你喜欢
  • 2021-05-14
  • 2021-11-01
  • 2018-09-27
  • 2020-04-24
  • 2013-11-19
  • 2021-05-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多