Basic version of create and predict segment

This commit is contained in:
Stuart Lynn
2016-06-21 21:00:30 +00:00
parent 79699cd5cb
commit 1d13b98d68
2 changed files with 52 additions and 198 deletions

View File

@@ -1,55 +1,12 @@
CREATE OR REPLACE FUNCTION
CDB_CreateSegment (
segment_name TEXT,
table_name TEXT,
column_name TEXT,
geoid_column TEXT DEFAULT 'geoid',
census_table TEXT DEFAULT 'block_groups'
)
RETURNS NUMERIC
AS $$
from crankshaft import segmentation
# TODO: use named parameters or a dictionary
return segmentation.create_segment(segment_name,table_name,column_name,geoid_column,census_table,'random_forest')
$$ LANGUAGE plpythonu;
CREATE OR REPLACE FUNCTION
CDB_CorrelatedVariables(
query text,
geoid_column text DEFAULT 'geoid',
census_table text DEFAULT 'ml_learning_block_groups_clipped'
)
RETURNS TABLE(feature text, importance NUMERIC, std NUMERIC)
AS $$
from crankshaft.segmentation import correlated_variables
return correlated_variables(query,geoid_column,census_table)
$$ LANGUAGE plpythonu;
CREATE OR REPLACE FUNCTION
CDB_PredictSegment (
segment_name TEXT,
geoid_column TEXT DEFAULT 'geoid',
census_table TEXT DEFAULT 'block_groups'
)
RETURNS TABLE(geoid TEXT, prediction NUMERIC)
AS $$
from crankshaft.segmentation import create_segemnt
# TODO: use named parameters or a dictionary
return create_segment('table')
$$ LANGUAGE plpythonu;
CREATE OR REPLACE FUNCTION
CDB_CreateAndPredictSegment (
segment_name TEXT,
query TEXT,
target_table TEXT,
geoid_column TEXT DEFAULT 'geoid',
census_table TEXT DEFAULT 'block_groups'
variable_name TEXT,
target_table TEXT
)
RETURNS TABLE (the_geom geometry, geoid text, prediction Numeric )
RETURNS TABLE (cartodb_id text, prediction Numeric )
AS $$
from crankshaft import segmentation
from crankshaft.segmentation import create_and_predict_segment
# TODO: use named parameters or a dictionary
return segmentation.create_and_predict_segment(segment_name,query,geoid_column,census_table,target_table,'random_forest')
return create_and_predict_segment(query,variable_name,target_table)
$$ LANGUAGE plpythonu;