pandas检索两个excel某列的信息,只要有相同的字符,不必完全一致,保存到一个excel中
时间: 2024-03-08 20:46:20 浏览: 82
python pandas 读取excel数据
可以使用pandas库来实现这个需求。具体步骤如下:
1. 首先,使用pandas库中的read_excel()方法读取两个excel文件中的数据,将它们分别存储到两个DataFrame对象中。
```python
import pandas as pd
df1 = pd.read_excel('file1.xlsx')
df2 = pd.read_excel('file2.xlsx')
```
2. 接下来,使用pandas库中的str.contains()方法对两个DataFrame对象的指定列进行模糊查找,将查找到的结果存储到一个新的DataFrame对象中。
```python
# 在df1的“列1”中查找包含“apple”的行
result1 = df1[df1['列1'].str.contains('apple', case=False)]
# 在df2的“列2”中查找包含“apple”的行
result2 = df2[df2['列2'].str.contains('apple', case=False)]
```
3. 最后,使用pandas库中的to_excel()方法将查找到的结果保存到一个新的excel文件中。
```python
# 将查找到的结果保存到一个新的excel文件中
with pd.ExcelWriter('result.xlsx') as writer:
result1.to_excel(writer, sheet_name='Sheet1', index=False)
result2.to_excel(writer, sheet_name='Sheet2', index=False)
```
完整代码如下:
```python
import pandas as pd
# 读取两个excel文件中的数据
df1 = pd.read_excel('file1.xlsx')
df2 = pd.read_excel('file2.xlsx')
# 在df1的“列1”中查找包含“apple”的行
result1 = df1[df1['列1'].str.contains('apple', case=False)]
# 在df2的“列2”中查找包含“apple”的行
result2 = df2[df2['列2'].str.contains('apple', case=False)]
# 将查找到的结果保存到一个新的excel文件中
with pd.ExcelWriter('result.xlsx') as writer:
result1.to_excel(writer, sheet_name='Sheet1', index=False)
result2.to_excel(writer, sheet_name='Sheet2', index=False)
```
注意:这段代码中的“列1”和“列2”需要根据实际情况进行替换。另外,如果要查找多个关键字,只需要在str.contains()方法的参数中使用“|”符号连接多个关键字即可。
阅读全文