我有一个看似复杂的问题,我对应该如何解决有一个大致的了解,但是我不确定这是否是解决问题的最佳方法。我将给出该方案,并希望对如何解决此问题提供任何帮助。我对Pandas不太了解,请原谅我的无知。
场景
我有一个导入为数据框的CSV文件。我正在处理的示例包含2742行×136列。行是可变的,但列已设置。我有一组23个查找表(也称为CSV文件),每年命名,每个季度命名(范围是2020年第3季度-2015年第1季度)。查找文件的命名如下:PPRRVU203.csv。因此,其中包含2020年第三季度的值。查找表由两列(“代码”和“模块”)匹配,我使用与查找相关联的三个值。
我试图过滤数据框的各个部分,从匹配的查找文件中提取正确的值,合并回原始子集,然后替换为原始数据框。
想法
我可能可以对此进行抽象并包装一个函数,但不确定如何放置。我的问题是,对于那些比我更了解熊猫的人,什么是筛选,替换值和编写代码的最佳方法?文件退回。
直接的解决方案是将原始数据帧过滤为23个单独的数据帧,然后对每个文件进行合并,然后合并为新的数据帧并输出为CSV。
这似乎效率很低吗?
我可以发布代码,但是我正在寻找更多高级想法吗?
答案 0 :(得分:1)
不确定DataFrame的外观如何,但是Pandas.query()方法可能对选择数据很有用。
name = df.query('columnname == "something"')