基于价值的优先顺序
vbp的Python项目详细描述
ValueBasedPriorization
文章
学术文章:https://github.com/freeradical13/ValueBasedPrioritization/raw/master/value_based_prioritization.pdf
安装
pip3 install vbp
vbp
基于值的优先级(vbp
)使用值理论来量化
确定潜在行动的优先顺序以实现目标。
可以从命令行使用vbp.run
模块来执行
不同的vbp操作,例如列出操作(list
),计数
动作(count
),预测值(predict
),运行建模的vbp
(modeled_value_based_prioritization
)等等。有关用法,请运行:
python3 -m vbp.run
任何非终端输出都会转到vbpoutput
子文件夹。
下面是一个简单的例子,计算 美国违约数据的潜在死亡原因 类型:
python3 -m vbp.run count UCODUnitedStates
或者,如果通过pip
安装,则vbp
脚本包装器可以
使用:
vbp count UCODUnitedStates
上面的学术文章包括脚注,详细说明了如何
运行vbp
生成每个步骤的输出。
此包提供要运行的抽象类和实用程序方法 vbp,主要集中在使用时间序列数据 预测未来的价值,并根据相关的 预测值。
vbp.DataSource
类是vbp的基本抽象类。
抽象类继承自
vbp.DataSource
可用于建模的vbp。这个
vbp.ExampleDataSource
类演示了一个简单的基于数据源的
在vbp.TimeSeriesDataSource
上。
内置的建模VBP包括
美国(vbp.ucod.united_states.UCODUnitedStates
)和
世界(vbp.ucod.world.UCODWorld
)。这些
数据源都继承自
从vbp.TimeSeriesDataSource
继承。
运行
模型类型由--ets
、--ols
和/或--prophet
指定。
它们不是互斥的;如果在
modeled_value_based_prioritization
,取
结果。默认值是--ets
。
默认情况下,操作名称会被模糊化,以减少模型期间的偏差。
建造和测试。指定--do-not-obfuscate
以显示实际名称。
某些数据源具有不同的数据类型(例如互斥
数据分组)。在数据源之前添加-a
参数
为所有数据类型运行的名称。在后面添加--data-type X
参数
指定特定数据类型的数据源名称。
一般来说,可以指定一个操作列表来运行 列表;否则,如果没有这样的列表,则处理所有操作。
示例:
python3 -m vbp.run modeled_value_based_prioritization UCODUnitedStates
python3 -m vbp.run modeled_value_based_prioritization UCODUnitedStates --do-not-obfuscate "Heart disease" Cancer
指数平滑
python3 -m vbp.run modeled_value_based_prioritization ${DATA_SOURCE} --ets
指定--ets-no-multiplicative-models
以仅使用加法模型。
指定--ets-no-additive-models
仅使用乘法模型。
线性回归
python3 -m vbp.run modeled_value_based_prioritization ${DATA_SOURCE} --ols
指定--ols-max-degrees X
以模拟更高的学位。
先知
python3 -m vbp.run modeled_value_based_prioritization ${DATA_SOURCE} --prophet
美国
截至2019年3月1日,解压缩的美国死亡率数据消耗约36GB 磁盘。当一个函数 是需要的。
长期、可比、主要死因
为生成data/ucod/united_states/comparable_data_since_1959.xlsx
所有长期、可比、主要死因
https://www.cdc.gov/nchs/data/dvs/lead1900_98.pdf:
python3 -m vbp.run prepare_data UCODUnitedStates
第1900:1957行和页Comparability Ratios
in
data/ucod/united_states/comparable_ucod_estimates.xlsx
是手动的
来自https://www.cdc.gov/nchs/data/dvs/lead1900_98.pdf的输入
打开comparable_data_since_1959.xlsx
并复制1959行:present。
打开comparable_ucod_estimates.xlsx
并粘贴到顶部开始
1959年。
用它处理comparable_ucod_estimates.xlsx
Comparability Ratios
要生成的工作表
comparable_ucod_estimates_ratios_applied.xlsx
:
python3 -m vbp.run prepare_data UCODUnitedStates --comparable-ratios
最终输出:
python3 -m vbp.run modeled_value_based_prioritization UCODUnitedStates --data-type UCOD_LONGTERM_COMPARABLE_LEADING
世界
截至2019年3月1日,解压缩后的世界死亡率数据消耗了约320MB 磁盘。当一个函数 是需要的。
在测试时,编写数据电子表格需要很多时间,而且可能 避免使用--不要编写电子表格。
创建新的数据源
查看vbp/example.py以获取一个简单的示例。基本过程是:
- 在somename.py中创建vbp.datasource的子类
- 实现所有
@abc.abstractmethod
m以身作则 其他需要的超类方法。 - 在vbp/run.py顶部导入somename.py
开发
先决条件:
pip3 install numpy pandas matplotlib statsmodels scipy fbprophet
更新pypi包:
# Edit version in setup.py and __init__.py
python3 setup.py bdist bdist_wheel
python3 -m twine upload --skip-existing dist/*
# https://pypi.org/project/vbp/