我正试图将以下条件存储在变量excel_filted中excel_filtered = excel[excel['prowess_compustat_h1b'] == 1] | excel['compustat_h1b'] == 1
但是我得到以下错误
TypeError: unsupported operand type(s) for |: 'str' and 'bool'
编辑
这是一个简单的语法错误,末尾缺少一个括号。正确答案如下:
excel_filtered = excel[excel['prowess_compustat_h1b'] == 1] | excel['compustat_h1b'] == 1]
似乎你把方括号放错了地方。这是最好的做法,在评估多个布尔标准时使用括号。
excel_filtered = excel[(excel['prowess_compustat_h1b'] == 1) | (excel['compustat_h1b'] == 1)]
同样对于这些类型的操作,我发现query
方法可以提高可读性:
excel_filtered = excel.query("(prowess_compustat_h1b == 1) | (compustat_h1b == 1)"