python-3.x - 创建自定义估算器
问题描述
联邦机构医疗保险和医疗补助服务中心 (CMS) 对疗养院实施法规。但是,州机构会检查疗养院是否遵守法规,各州对违规行为的罚款可能会有很大差异。
让我们开发一个非常简单的初始模型来预测疗养院可能会根据其位置支付的罚款金额。在下面填写自定义估计器 StateMeanEstimator 的类定义。
我得到以下信息(错误您的解决方案与预期的类型不匹配:53 * number 具体来说,解决方案 [52] 与 {'type': 'number'}: None 不匹配)
这是我的代码
from sklearn.base import BaseEstimator, RegressorMixin, TransformerMixin
类 GroupMeanEstimator(BaseEstimator, RegressorMixin): def init (self, grouper): self.grouper = grouper self.group_averages = {}
def fit(self, X, y):
# Use self.group_averages to store the average penalty by group
Xy = X.join(y)
state_mean_series = Xy.groupby(self.grouper)[y.name].mean()
for row in pd.DataFrame(state_mean_series).itertuples():
self.group_averages[row[0]] = row[1]
return self
def predict(self, X):
# Return a list of predicted penalties based on group of samples in X
if not isinstance(X, pd.DataFrame):
X = pd.DataFrame(X)
dictionary = self.group_averages
group = self.grouper
list_of_predictions = []
for row in X.itertuples():
prediction = dictionary.get(row.STATE)
list_of_predictions.append(prediction)
return list_of_predictions
解决方案
推荐阅读
- r - 如何按组用第一个非缺失值填充缺失?
- .net - VS2017 Angular 模板 - webapi 在一个端口上侦听,在另一个端口上侦听 Angular 客户端
- javascript - 如何放大CSS按钮的可点击?
- c - 为什么我的 sys/types 头文件中没有 gid_t?
- c# - 如何在 C# 中连接 Object 类型元素的属性
- angular - 角
不加载 - r - 生成包含两行的表。具有按年份排序的数据平均值。第二个有不同年份的数据。使用 R
- java - Java - StringBuilder 与字符串的串联
- java - Correct way to upload a file in serenity-screenplay
- javascript - 当我使用 HTML5 约束验证 API 使字段无效时,我必须使用 aria-invalid 吗?