pandas.core.series.Series筛选出values等于True的index
时间: 2023-03-27 08:04:47 浏览: 134
可以使用以下代码筛选出values等于True的index:
```
series[series == True].index
```
其中,series为pandas.core.series.Series对象。
相关问题
data["Cabin"].fillna("NA", inplace=True) data["Cabin"] = data["Cabin"].map(lambda s:s[0]) data.pop("Ticket") Traceback (most recent call last): File "C:\Users\lenovo\AppData\Local\Temp\ipykernel_35060\2438968317.py", line 2, in <module> data["Cabin"] = data["Cabin"].map(lambda s:s[0]) File "D:\tmp\lib\site-packages\pandas\core\series.py", line 4237, in map new_values = self._map_values(arg, na_action=na_action) File "D:\tmp\lib\site-packages\pandas\core\base.py", line 880, in _map_values new_values = map_f(values, mapper) File "pandas\_libs\lib.pyx", line 2870, in pandas._libs.lib.map_infer File "C:\Users\lenovo\AppData\Local\Temp\ipykernel_35060\2438968317.py", line 2, in <lambda> data["Cabin"] = data["Cabin"].map(lambda s:s[0]) TypeError: 'int' object is not subscriptable咋解决
你可以先检查一下 "Cabin" 列是否包含整数类型的数据,如果有的话,可以将其转换为字符串类型或者其他支持下标操作的类型,例如:
```
data["Cabin"] = data["Cabin"].astype(str).fillna("NA")
data["Cabin"] = data["Cabin"].map(lambda s:s[0])
```
这样就可以避免在 map 操作中出现整数类型的数据导致的错误了。
return self._arith_method(other, operator.truediv) File "D:\pycharm代码实现\venv\lib\site-packages\pandas\core\series.py", line 6108, in _arith_method return base.IndexOpsMixin._arith_method(self, other, op) File "D:\pycharm代码实现\venv\lib\site-packages\pandas\core\base.py", line 1348, in _arith_method result = ops.arithmetic_op(lvalues, rvalues, op) File "D:\pycharm代码实现\venv\lib\site-packages\pandas\core\ops\array_ops.py", line 232, in arithmetic_op res_values = _na_arithmetic_op(left, right, op) # type: ignore[arg-type] File "D:\pycharm代码实现\venv\lib\site-packages\pandas\core\ops\array_ops.py", line 178, in _na_arithmetic_op result = _masked_arith_op(left, right, op) File "D:\pycharm代码实现\venv\lib\site-packages\pandas\core\ops\array_ops.py", line 116, in _masked_arith_op result[mask] = op(xrav[mask], yrav[mask]) TypeError: unsupported operand type(s) for /: 'str' and 'str'
这个错误是在使用 Pandas 库中的 Series 对象进行数学运算时出现的。具体地说,在这个例子中,你正在尝试将两个字符串类型的值相除,而 Python 不支持这种操作。你需要检查你的代码,确保你正在对数值类型进行数学运算,而不是字符串类型。如果你有一些字符串类型的数据需要进行运算,你需要先将它们转换为数值类型。
阅读全文