python如何从两列长数据中筛选出与另外两列不规则数据相同的数字并输出这些相同的数字
时间: 2024-02-18 20:00:47 浏览: 72
python自动办公-11 在Excel中按条件筛选数据并存入新的表
5星 · 资源好评率100%
假设你有两个长数据,分别存储在 `data1` 和 `data2` 中,每个数据包含两列,分别为 `col1` 和 `col2`,另外两个不规则数据分别为 `irr1` 和 `irr2`。你可以使用 Pandas 库来解决这个问题,具体步骤如下:
1. 导入 Pandas 库:
```python
import pandas as pd
```
2. 读取数据到 Pandas 的 DataFrame 中:
```python
df1 = pd.read_csv('data1.csv')
df2 = pd.read_csv('data2.csv')
```
3. 从不规则数据中提取出需要比对的数字,并转换成集合:
```python
set1 = set(irr1.split(';') + irr2.split(';'))
```
4. 在 DataFrame 中使用条件筛选,找到与集合中相同的数字:
```python
result = df1[(df1['col1'].isin(set1)) & (df1['col2'].isin(set1))]
result = result.append(df2[(df2['col1'].isin(set1)) & (df2['col2'].isin(set1))])
```
5. 输出结果:
```python
print(result)
```
注意,这里使用了 Pandas 的 `isin` 函数来判断一个元素是否属于集合。另外,如果两个数据的列名不同,需要在代码中进行相应的修改。
阅读全文