pandas如何获取其他列数据含有文字 :XXX 的数据
时间: 2024-02-27 18:58:28 浏览: 21
你可以使用 Pandas 的 `loc` 方法和布尔索引来获取其他列数据含有文字 XXX 的数据。具体步骤如下:
1. 假设你的数据存储在一个名为 `df` 的 DataFrame 中,先创建一个名为 `mask` 的布尔索引,它表示其他列数据含有文字 XXX 的行:
```python
mask = df.apply(lambda row: 'XXX' in ' '.join(row.astype(str)), axis=1)
```
这里使用了 `apply` 方法和 `lambda` 表达式,将每一行转换为字符串并检查是否包含文字 XXX。然后使用 `axis=1` 参数表示沿着行的方向进行操作,返回一个布尔 Series 对象。
2. 使用 `loc` 方法和布尔索引 `mask` 来获取符合条件的数据:
```python
result = df.loc[mask]
```
这里使用了 `loc` 方法和布尔索引 `mask` 来获取符合条件的行数据,返回一个新的 DataFrame 对象。
完整代码示例:
```python
import pandas as pd
# 构造示例数据
df = pd.DataFrame({
'A': ['foo', 'bar', 'baz', 'qux'],
'B': ['hello', 'world', 'XXX', 'Python'],
'C': [1, 2, 3, 4],
})
# 获取其他列数据含有文字 XXX 的数据
mask = df.apply(lambda row: 'XXX' in ' '.join(row.astype(str)), axis=1)
result = df.loc[mask]
print(result)
```
输出结果为:
```
A B C
2 baz XXX 3
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)