import sklearn as sk
from sklearn.ensemble import ExtraTreesRegressor
from sklearn.model_selection import train_test_split
selection = ExtraTreesRegressor()
selection.fit(X,y)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.2, random_state = 42)
from sklearn.ensemble import RandomForestRegressor
rfr = RandomForestRegressor()
rfr.fit(X_train, y_train)
from sklearn.model_selection import RandomizedSearchCV
rfrandom = RandomizedSearchCV(estimator = rfr, param_distributions = random_grid, scoring = 'neg_mean_squared_error', n_iter = 10, cv = 5, verbose = 2, n_jobs = 1)
rfrandom.fit(X_train, y_train)我想使用AST(抽象语法树模块)获得如下输出。你能帮帮我吗?
Import_inforamtion = {{library_name:sklearn},{alias: sk},
{modules:[ensemble,model_selection]},
{Classes : [ExtraTreesRegressor, RandomForestRegressor, RandomizedSearchCV]}, {Class_functionss :[fit]},
{Class_params:[X,y,X_train, y_train,estimator, param_distributions, scoring, n_iter, cv, verbose, n_jobs]},
{Functions: [train_test_split]},
{Function_params : [X, y, test_size, random_state]}, {Function_outputs:[X_train, X_test, y_train, y_test]} }发布于 2022-03-21 04:49:59
我不太清楚你在找什么,但也许是这样的:
$ ipython
Python 3.8.10 (default, May 4 2021, 00:00:00)
Type 'copyright', 'credits' or 'license' for more information
IPython 8.1.1 -- An enhanced Interactive Python. Type '?' for help.
In [1]: import ast
In [2]: src = """import sklearn as sk
...: from sklearn.ensemble import ExtraTreesRegressor
...: from sklearn.model_selection import train_test_split
...: selection = ExtraTreesRegressor()
...: selection.fit(X,y)
...: X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.2, random_state = 42)
...: from sklearn.ensemble import RandomForestRegressor
...: rfr = RandomForestRegressor()
...: rfr.fit(X_train, y_train)
...: from sklearn.model_selection import RandomizedSearchCV
...: rfrandom = RandomizedSearchCV(estimator = rfr, param_distributions = random_grid, scoring = 'neg_mean_squared_
...: error', n_iter = 10, cv = 5, verbose = 2, n_jobs = 1)
...: rfrandom.fit(X_train, y_train)
...: """
In [3]: ast.dump(ast.parse(src))
Out[3]: "Module(body=[Import(names=[alias(name='sklearn', asname='sk')]), ImportFrom(module='sklearn.ensemble', names=[alias(name='ExtraTreesRegressor', asname=None)], level=0), ImportFrom(module='sklearn.model_selection', names=[alias(name='train_test_split', asname=None)], level=0), Assign(targets=[Name(id='selection', ctx=Store())], value=Call(func=Name(id='ExtraTreesRegressor', ctx=Load()), args=[], keywords=[]), type_comment=None), Expr(value=Call(func=Attribute(value=Name(id='selection', ctx=Load()), attr='fit', ctx=Load()), args=[Name(id='X', ctx=Load()), Name(id='y', ctx=Load())], keywords=[])), Assign(targets=[Tuple(elts=[Name(id='X_train', ctx=Store()), Name(id='X_test', ctx=Store()), Name(id='y_train', ctx=Store()), Name(id='y_test', ctx=Store())], ctx=Store())], value=Call(func=Name(id='train_test_split', ctx=Load()), args=[Name(id='X', ctx=Load()), Name(id='y', ctx=Load())], keywords=[keyword(arg='test_size', value=Constant(value=0.2, kind=None)), keyword(arg='random_state', value=Constant(value=42, kind=None))]), type_comment=None), ImportFrom(module='sklearn.ensemble', names=[alias(name='RandomForestRegressor', asname=None)], level=0), Assign(targets=[Name(id='rfr', ctx=Store())], value=Call(func=Name(id='RandomForestRegressor', ctx=Load()), args=[], keywords=[]), type_comment=None), Expr(value=Call(func=Attribute(value=Name(id='rfr', ctx=Load()), attr='fit', ctx=Load()), args=[Name(id='X_train', ctx=Load()), Name(id='y_train', ctx=Load())], keywords=[])), ImportFrom(module='sklearn.model_selection', names=[alias(name='RandomizedSearchCV', asname=None)], level=0), Assign(targets=[Name(id='rfrandom', ctx=Store())], value=Call(func=Name(id='RandomizedSearchCV', ctx=Load()), args=[], keywords=[keyword(arg='estimator', value=Name(id='rfr', ctx=Load())), keyword(arg='param_distributions', value=Name(id='random_grid', ctx=Load())), keyword(arg='scoring', value=Constant(value='neg_mean_squared_error', kind=None)), keyword(arg='n_iter', value=Constant(value=10, kind=None)), keyword(arg='cv', value=Constant(value=5, kind=None)), keyword(arg='verbose', value=Constant(value=2, kind=None)), keyword(arg='n_jobs', value=Constant(value=1, kind=None))]), type_comment=None), Expr(value=Call(func=Attribute(value=Name(id='rfrandom', ctx=Load()), attr='fit', ctx=Load()), args=[Name(id='X_train', ctx=Load()), Name(id='y_train', ctx=Load())], keywords=[]))], type_ignores=[])"
In [4]: https://stackoverflow.com/questions/71550664
复制相似问题