コード例 #1
0
 def compute(self,  dataset_pool):
     ds = self.get_dataset()
     schools = dataset_pool.get_dataset("school")
     values = schools[self.varname]
     valid_idx = values > 0
     result = mean(values[valid_idx], labels=schools[ds.get_id_name()[0]][valid_idx], 
                     index=ds.get_id_attribute())
     is_nan = isnan(result)
     result[is_nan] = ds["_school_faz_measure"]
     return result
コード例 #2
0
 def compute(self,  dataset_pool):
     zones = self.get_dataset()
     hhs = dataset_pool.get_dataset("household")
     income = hhs["income"]
     valid_income_idx = income > 0
     result = mean(income[valid_income_idx], labels=hhs[zones.get_id_name()[0]][valid_income_idx], 
                     index=zones.get_id_attribute())
     is_nan = isnan(result)
     result[is_nan] = 0
     return result
コード例 #3
0
 def compute(self,  dataset_pool):
     ds = self.get_dataset()
     schools = dataset_pool.get_dataset("school")
     values = schools[self.varname]
     valid_idx = values > 0
     pcl_school_district = ds['school_district_id']
     result = mean(values[valid_idx], labels=schools["school_district_id"][valid_idx], index=pcl_school_district)
     is_nan = isnan(result)
     result[is_nan] = 0
     return result
コード例 #4
0
ファイル: hh_adults_mean_age.py プロジェクト: psrc/urbansim
 def compute(self, dataset_pool):
     persons = dataset_pool.get_dataset("person")
     hhs = self.get_dataset()
     where_adult = where(persons.get_attribute("is_adult"))[0]
     age = persons.get_attribute("age")
     return array(
         ndimage.mean(
             age[where_adult],
             labels=persons.get_attribute("household_id")[where_adult],
             index=hhs.get_id_attribute(),
         )
     )
コード例 #5
0
    def compute(self,  dataset_pool):
        ds = self.get_dataset()
        schools = dataset_pool.get_dataset("school")
        values = schools[self.varname]
        valid_idx = values > 0
        result = mean(values[valid_idx], labels=schools[ds.get_id_name()[0]][valid_idx], 
                        index=ds.get_id_attribute())
        is_nan = isnan(result)
        result[is_nan] = 0
#        if any(is_nan):
#            result_district = mean(values[valid_idx], labels=schools['school_district_id'][valid_idx], 
#                        index=ds['school_district_id'])
#            not_is_nan_district = logical_and(isnan(result_district) == 0,is_nan)
#            result[not_is_nan_district] = result_district[not_is_nan_district]
        return result
コード例 #6
0
ファイル: total_value_per_sqft.py プロジェクト: psrc/urbansim
 def compute(self, dataset_pool):
     ds = self.get_dataset()
     parcels = dataset_pool.get_dataset("parcel")
     # up = parcels.get_attribute("total_value_per_sqft")
     up = parcels.get_attribute("unit_price")
     where_zero = where(up == 0)[0]
     up[where_zero] = parcels.get_attribute("total_value_per_sqft")[where_zero]
     where_positive = where(up > 0)[0]
     faz = parcels.get_attribute(self.id_variable)
     lut = parcels.get_attribute("land_use_type_id")
     fazids = ds.get_dataset(1).get_id_attribute()
     lutids = ds.get_dataset(2).get_id_attribute()
     result = zeros(ds.size()[0])
     for i in range(result.shape[0]):  # iterate over large areas
         labels = where(faz == fazids[i], lut, 0)
         result[i, :] = ndimage.mean(up[where_positive], labels=labels[where_positive], index=lutids)
     return result