dataframe根据另一个csv快速查找数据
创始人
2025-05-28 22:31:51

dataframe根据另一个csv查找数据,且两个数据个数不同:
(1)目标文件:
在这里插入图片描述
(2)查找条件:根据这个csv文件查找,如FID=6029
在这里插入图片描述
情况一:一个csv文件作为数据集,另外一个csv文件作为查找条件,假设有一个csv文件A,包含学生的姓名、id、年龄、性别等信息;另外一个csv文件B,只包含一些需要查找的id号码。我们需要从A中查找这些id对应的学生姓名,并将结果写入一个新的csv文件。

  1. 首先导入必要的库和数据:
```python
import pandas as pdstudents = pd.read_csv("students.csv")
lookup = pd.read_csv("lookup.csv")print(students.head())
print(lookup.head())
  1. 接下来,我们可以使用merge()函数将两个数据集合并,注意这里使用了’inner’模式,即只合并两个数据集中都有的id。
# 根据id合并数据集
result = pd.merge(students, lookup, on='id', how='inner')print(result.head())
  1. 我们只需要保留需要的列,即学生的姓名和id信息,并将结果写入一个新的csv文件result.csv。
# 保留需要的列,并将结果写入新的csv文件
result = result[['id', 'name']]
result.to_csv('result.csv', index=False)

情况二:两个csv文件的条目数不同,需要按照相同的字段进行匹配
假设有两个csv文件A和B,其中A包含学生的姓名、id、年龄、性别等信息;B包含每位学生的成绩信息,包括id和对应的成绩。但是这两个文件的条目数不同,我们需要根据id进行匹配,将两个文件中数据匹配成功的行合并在一起。

  1. 首先导入必要的库和数据:
import pandas as pdstudents = pd.read_csv("students.csv")
scores = pd.read_csv("scores.csv")print(students.head())
print(scores.head())
  1. 接下来,我们要根据id将两个数据集进行匹配,同时指定how='outer’表示保留剩余未匹配成功的数据。
# 根据id合并数据集
result = pd.merge(students, scores, on='id', how='outer')print(result.head())
  1. 由于两个数据集的条目数不同,因此可能存在一些未匹配成功的数据。我们可以使用dropna()函数将未匹配成功的数据去除,并将结果写入一个新的csv文件。
# 去除匹配失败的行,并将结果写入新的csv文件
result = result.dropna()
result.to_csv('combined.csv', index=False)

相关内容

热门资讯

[了解科技]“欢乐龙城9可以开... [了解科技]“欢乐龙城9可以开挂吗!”!原来真的有挂您好:欢乐龙城9这款游戏可以开挂,确实是有挂的,...
实测推荐.樱花牛牛是不是有挂.... 实测推荐.樱花牛牛是不是有挂.辅助神器下载!您好:樱花牛牛这款游戏可以开挂,确实是有挂的,需要了解加...
独家发现.上海泸乐麻将怎么装挂... 独家发现.上海泸乐麻将怎么装挂.透视曝光猫腻!您好:上海泸乐麻将这款游戏可以开挂,确实是有挂的,需要...
「玩家分享攻略」六六顺炸金花.... 您好:六六顺炸金花这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9784099】很多玩家在这款...
我来教教您「福州十八扑」有挂稳... 您好:福州十八扑这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9183893】很多玩家在这款游...