test['b']=test['a'].mask(test['a'].str.contains('a3-'),test['a'].str.extract('\d$'))报错incompatinle indexer with dataframe
时间: 2023-09-27 09:03:57 浏览: 25
这个错误通常是由于使用了不兼容的索引器导致的。在这里,使用了 `mask` 函数对 `test['a']` 进行了操作,但是在对其进行索引时,可能与 `test` 数据框的结构不兼容,导致了错误。
您可以尝试使用 `.loc` 进行索引,如下所示:
```
test.loc[test['a'].str.contains('a3-'), 'b'] = test['a'].str.extract('\d$')
```
这样应该就可以正确地为符合条件的行赋值了。同时,也建议您检查一下 `test` 数据框的结构,确保符合您的预期。
阅读全文