写一个代码,读取xlsx文件,读取并输出列名为“个体号”的列的数值,如果数值唯一则保留,若数值有重复,则判断“状态”列,值是否为“离场”或者“转后备”,如果是则删除,如果不是则保留,最后将唯一值保存输出为新的XLSX表
时间: 2024-05-09 18:17:49 浏览: 79
:好的,我可以为您编写这样的代码。以下是Python 代码示例:
```python
import pandas as pd
# 读取原始xlsx文件
df = pd.read_excel('your_file.xlsx')
# 提取“个体号”列的值
df_indv = df['个体号']
# 判断是否有重复值
has_duplicates = df_indv.duplicated().any()
if has_duplicates:
# 有重复值,按“状态”列条件去重
df_filtered = df.drop_duplicates(subset=['个体号'], keep=False)
df_filtered = df_filtered[df_filtered['状态'].isin(['离场', '转后备'])].drop_duplicates(subset=['个体号'], keep=False)
else:
# 没有重复值,直接输出
df_filtered = df
# 保存筛选后的 dataframe 到新的xlsx文件
df_filtered.to_excel('unique_indv.xlsx', index=False)
```
请注意,这里使用了 pandas 开源库来处理xlsx文件。您可以根据需要对上面的代码进行修改和优化。
阅读全文