在python中基于if-then条件创建新变量

在python中基于if-then条件创建新变量,python,pandas,Python,Pandas,我在python中有两个数字列。”2016年和2015年的价值 我想创建一个列,如果前面的两个col都大于0,则该列为1,否则为0 我似乎找不到这个,尽管我认为这很简单。可能是我的SAS/SQL背景不太了解它 我已经试过了 dataset.['both_BF'] = (dataset['value_BF_2016'] > 0) &(dataset['value_BF_2015'] > 0) 及 在第一行代码中有一个额外的点()。此外,它将返回一列布尔值。您可以通过乘以1转换

我在python中有两个数字列。”2016年和2015年的价值

我想创建一个列,如果前面的两个col都大于0,则该列为1,否则为0

我似乎找不到这个,尽管我认为这很简单。可能是我的SAS/SQL背景不太了解它

我已经试过了

dataset.['both_BF'] = (dataset['value_BF_2016'] > 0) &(dataset['value_BF_2015'] > 0)

在第一行代码中有一个额外的点(
)。此外,它将返回一列布尔值。您可以通过乘以1转换为
int

dataset['both_BF'] = 1*((dataset['value_BF_2016'] > 0) & 
                        (dataset['value_BF_2015'] > 0))
在第一行代码中有一个额外的点(
)。此外,它将返回一列布尔值。您可以通过乘以1转换为
int

dataset['both_BF'] = 1*((dataset['value_BF_2016'] > 0) & 
                        (dataset['value_BF_2015'] > 0))

除了
[
之前的点之外,在你的第一次猜测中,有什么不起作用呢?这个想法对我来说很正确。我想这是给熊猫的?@PeterWood
&
是有效的python。这是位and运算符,在熊猫中被覆盖。请看:啊,点!对不起,我错过了。除了
之前的点之外[
在你的第一次猜测中,什么不起作用?我觉得这个想法很对。我想这是给熊猫的?@PeterWood
&
是有效的python。这是位and运算符,在熊猫中被重写。请看:啊,点!对不起,我错过了。将
&
更改为
。与是用于二进制计算的ns.当我执行此操作并更改为并更改&to和gives ValueError时,仍然会得到true/false。序列的真值是不明确的。使用a.empty、a.bool()、a.item()、a.any()或a.all()。&对pandas是正确的。他们专门为这些目的实现了此运算符。您可以使用
astype(int)将列转换为int
。将
&
更改为
。与符号用于二进制计算。当我执行此操作并更改为并更改&to和gives ValueError时,我仍然会得到true/false。序列的真值不明确。请使用a.empty、a.bool()、a.item()、a.any()或a.all().&对于pandas是正确的。他们专门为这些目的实现了此运算符。您可以使用
astype(int)
将列转换为int。