Python实现找到excel表中的第二列中的值相同的单元格对应的前一列的单元格值,将其中的第一个写入新的excel表的第一列,其他的依次写入新的excel表的第四列
时间: 2023-06-08 11:07:49 浏览: 491
可以使用Python的pandas库来实现这个功能。首先,读取原始excel表格并选择需要的列:
``` python
import pandas as pd
# 读取原始excel表格
df = pd.read_excel('path/to/original.xlsx')
# 选择需要的列
df = df.iloc[:, :2]
```
然后,使用groupby函数对第二列进行分组,然后再将每个分组的第一个值(即第一列对应的值)提取出来,并将其写入新的excel表格的第一列,其他的值依次写入第四列:
``` python
# 对第二列进行分组
grouped = df.groupby(df.columns[1])
# 创建新excel表格
new_df = pd.DataFrame(columns=[df.columns[0], df.columns[1]])
# 遍历每个分组
for name, group in grouped:
# 获取第一列的第一个值
first_value = group.iloc[0, 0]
# 将第一列的第一个值写入新excel表格的第一列
new_df = new_df.append({df.columns[0]: first_value, df.columns[1]: ''}, ignore_index=True)
# 将其他值依次写入新excel表格的第四列
for i in range(1, len(group)):
new_df = new_df.append({df.columns[0]: '', df.columns[1]: group.iloc[i, 0]}, ignore_index=True)
# 将新excel表格保存到本地
new_df.to_excel('path/to/new.xlsx', index=False)
```
这样就可以实现找到excel表中的第二列中的值相同的单元格对应的前一列的单元格值,将其中的第一个写入新的excel表的第一列,其他的依次写入新的excel表的第四列的功能了。
阅读全文