【问题标题】:Conditional Average from Pandas DataFramePandas DataFrame 的条件平均值
【发布时间】:2018-11-19 05:33:50
【问题描述】:

我有一个包含多列房地产销售数据的数据框。我想按邮政编码查找所有 1bed-1bath 销售的每平方英尺平均价格 'ppsf'。这是我的尝试(字典中的每个键都是一个邮政编码):

bed1_bath1={}
for zip in zip_codes:
    bed1_bath1[zip]= (df.loc[(df['bed']==1) & (df['bath']==1) & (df['zip']==zip)]).mean()

问题在于,这会将数据帧中所有列的平均值添加到字典中。我确信有更好的方法来做到这一点;也许使用 numpy.where?

【问题讨论】:

    标签: python pandas


    【解决方案1】:

    (df[(df['bed']==1) & (df['bath']==1) & (df['zip']==zip)])['ppsf'].mean() 会这样做。您只需在计算平均值之前选择您感兴趣的列(因此您甚至不需要对其余列进行处理)。

    【讨论】:

      猜你喜欢
      • 2017-11-30
      • 2016-01-18
      • 2021-05-05
      • 1970-01-01
      • 1970-01-01
      • 2014-09-23
      • 1970-01-01
      • 2019-01-22
      • 2013-09-12
      相关资源
      最近更新 更多