首页 > 解决方案 > 你可以使用 if 语句来创建变量吗?

问题描述

我正在尝试从 STATA 切换到 python 进行数据分析,但我遇到了一些需要帮助的问题。我正在尝试根据原始变量中的某些值创建一个辅助变量。我想创建一个二进制变量,该变量标识值为 1 的跌倒事故(E 代码 E880.xx -E888.xx),以及值为 0 的所有其他电子代码。在 ICD-9 代码列表中超过 10,000 行,因此无法进行手动插补。

在 STATA 中,代码看起来像这样

newvar= 0
replace newvar = 1 if ecode_variable == "E880"
replace newvar = 1 if ecode_variable == "E881"
etc

我在python中尝试了类似的语句,但它不起作用

data['ecode_fall'] = 1 if data['ecode'] == 'E880'

在 python 中可以进行这种类型的工作吗?numpy 或 pandas 包中是否有可以帮助解决此问题的函数。

我还尝试创建一个字典变量,该变量调用跌倒伤害代码 1 并将其应用于变量无济于事。

标签: pythonpython-3.x

解决方案


放第if一个。

if data['ecode'] == 'E880': data['ecode_fall'] = 1

推荐阅读