并不是,是先对a,b,c进行分组,判断它每一组内
时间: 2024-01-03 12:03:17 浏览: 9
非常抱歉,我理解有误。根据您的描述,可以使用以下代码实现您的需求:
```python
# 对 A、B、C 进行分组
grouped = df.groupby(['A', 'B', 'C'])
# 计算每组中 B 字段是否全部为“识别成功”
is_all_success = grouped['B'].apply(lambda x: set(x) == set(['识别成功']))
# 计算结果1和结果2
result1 = is_all_success.groupby('A').sum().reset_index(name='result1')
result2 = grouped['C'].nunique().groupby('A').sum().reset_index(name='result2')
# 计算每组中 B 字段是否包含“识别成功”、“识别失败”或“未识别”
is_success_or_failure_or_unrecognized = grouped['B'].apply(lambda x: set(x).intersection(set(['识别成功', '识别失败', '未识别'])))
# 计算结果3和结果4
result3 = is_success_or_failure_or_unrecognized.groupby('A').nunique().reset_index(name='result3')
result4 = grouped['C'].nunique().groupby('A').sum().reset_index(name='result4')
```
其中,首先将 DataFrame 按 A、B、C 进行分组,并计算每组中 B 字段是否全部为“识别成功”(`is_all_success`)或是否包含“识别成功”、“识别失败”或“未识别”(`is_success_or_failure_or_unrecognized`)。然后,分别对结果1、结果2、结果3、结果4进行计算并存储到 DataFrame 中。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://img-home.csdnimg.cn/images/20210720083646.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)