test['b']=test['a'].mask(test['a'].str.contains('a3'),test['a'.].str.extract('\d$'))报错incompatinle indexer with dataframe
时间: 2023-09-29 09:03:22 浏览: 36
这个报错是因为在 `test['a'.].str.extract('\d$')` 中的 `.str` 是多余的,应该写成 `test['a'].str.extract('\d$')`。修改后的代码应该是:
```
test['b'] = test['a'].mask(test['a'].str.contains('a3'), test['a'].str.extract('\d$'))
```
相关问题
test['b']=test['a'].mask(test['a'].str.contains('a3-'),test['a'].str.extract('\d$'))报错incompatinle indexer with dataframe
这个错误通常是由于 `mask` 函数的返回值不是 `DataFrame` 类型所致。你可以尝试将 `mask` 函数的返回值转换为 `DataFrame` 类型,例如:
```
test['b'] = pd.DataFrame(test['a'].mask(test['a'].str.contains('a3-'), test['a'].str.extract('\d$')))
```
如果仍然报错,请检查 DataFrame 的列名和索引是否正确,并确保它们匹配。
阅读全文