Brian,
You're right, changing the estimation procedure is not very well
supported. I have done some changes today, so please update from SVN.
Then you can add an argument
estimation_procedure = "opus_core.estimate_linear_regression_r"
to the land_price_model controller in
urbansim/configs/general_configuration.py (in the
LandPriceModelConfigurationCreator call) and the estimation should call
that module.
We haven't kept code that uses rpy up to date since our conversion to
numpy, so yes, the module will be probably broken. But the suggested
change should do what I understand you want to do.
Let me know if you need this also for other models. We are in the
process of changing the system of configurations, so in the future it
should be much easier to specify these non-standard settings. Sorry for
the inconvenience.
Hana
Brian Miles wrote:
>
> Hello,
>
> We are trying to configure the land price model to estimate using RPy so
> that we can use R's AIC and plotting features.
>
> I see from urbansim.models.LandPriceModel.estimate() that the default
> estimation procedure used is that defined in
> opus_core.estimate_linear_regression.
>
> I see that there exists another potential land price estimation
> procedure in opus_core.estimate_linear_regression_r. In theory, we
> would use an estimation procedure something like this one to take
> advantage of R's AIC calculation and plot generation.
>
> However, I don't understand how to configure the
> urbansim.models.LandPriceModel to use something other than the default
> estimation procedure.
>
> Taking my cue from the documentation in
> opus_core.RegressionModel.estimate(), I tried adding the key
> 'estimation' with the value 'opus_core.estimate_linear_regression_r' to
> my estimation config. This doesn't work however, because LandPriceModel
> (a subclass of RegressionModel) specifies a procedure, and the logic in
> RegressionModel.estimate() only looks to the estimation configuration
> for the estimation procedure if there is no estimate procedure specified.
>
> I temporarily--for testing purposes--modified RegressionModel.estimate()
> to look first to the config. However the things I'm setting in my
> estimation config (e.g. estimation, cache_directory) aren't in the
> estimation config that RegressionModel.estimate() is seeing.
>
> I'm unsure of what the best way is to do what I'm trying to do (specify
> an estimation procedure other than that which is hard coded in
> LandPriceModel.estimate()).
>
> I may not be properly specifying the estimation procedure that I have to
> run; how should this be done? (I didn't see any specific advise on this
> in the Opus user guide.)
>
> Or perhaps I should copy the LandPriceModel into a models directory
> within my own package and modify that? (note: I modified
> urbansim.models.LandPriceModel, as a test, to run
> opus_core.estimate_linear_regression_r, and it did, only this estimation
> procedure appears to be broken. However, this is a moot point until I
> have an acceptable/"correct" way of specifying estimation procedures to
> models).
>
> Whether one of these or something else, what's the best way to proceed?
>
> Thanks,
>
> Brian Miles
> Graduate Assistant
> Spatial Analysis Lab - Rubenstein School of Environment and Natural
> Resources
> University of Vermont
>
>
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Users mailing list
> Users_at_urbansim.org
> http://www.urbansim.org/mailman/listinfo/users
Received on Wed Oct 03 2007 - 14:51:08 PDT
This archive was generated by hypermail 2.2.0 : Wed Oct 03 2007 - 14:51:09 PDT