我有 3 个 csv,两个包含“类”列表,另一个包含我的主数据集,如果第 2 列中的数据出现在列表 csv 1 中,我需要我的代码执行一次计算,但如果第 2 列中的数据出现在列表 csv 2 中并覆盖主 csv 列 12 中的值:
让我们假设列表 csv 1 包含以下内容:
classA
并列出 csv 2
classB
classC
我的主要数据列表包含以下内容:
X,classA,uniqueclassindicator1,x,x,3,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classA,uniqueclassindicator1,x,x,3,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classA,uniqueclassindicator1,x,x,3,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classB,uniqueclassindicator2,x,x,4,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classB,uniqueclassindicator2,x,x,4,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classB,uniqueclassindicator2,x,x,4,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classB,uniqueclassindicator2,x,x,4,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classA,uniqueclassindicator3,x,x,4,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classA,uniqueclassindicator3,x,x,4,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classA,uniqueclassindicator3,x,x,4,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classA,uniqueclassindicator3,x,x,4,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classC,uniqueclassindicator4,x,x,6,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classC,uniqueclassindicator4,x,x,6,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classC,uniqueclassindicator4,x,x,6,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classC,uniqueclassindicator4,x,x,6,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classC,uniqueclassindicator4,x,x,6,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classC,uniqueclassindicator4,x,x,6,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classA,uniqueclassindicator5,x,x,6,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classA,uniqueclassindicator5,x,x,6,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classA,uniqueclassindicator5,x,x,6,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classA,uniqueclassindicator5,x,x,6,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classA,uniqueclassindicator5,x,x,6,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
X,classA,uniqueclassindicator5,x,x,6,x,x,x,x,125,21.8,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
我想要做的是以下内容:如果主数据集的第 2 列在 csv 列表 1 中,则将第 6 列乘以第 11 列并替换第 12 列中的值。但是,如果主数据集的第 2 列中的文本在 csv 中列表 2 然后将第 6 列除以第 11 列并替换第 12 列中的值。我必须对大约 700k 行数据执行此操作(因此效率非常重要),显然列表 1 和 2 远大于1/2 条数据。如果我能得到一个可以执行此功能的代码,那么我将大量使用该方法。
所以我需要说的代码返回如下:
x,classA,uniqueclassindicator1,x,x,3,x,x,x,x,125,375,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classA,uniqueclassindicator1,x,x,3,x,x,x,x,125,375,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classA,uniqueclassindicator1,x,x,3,x,x,x,x,125,375,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classB,uniqueclassindicator2,x,x,4,x,x,x,x,125,0.032,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classB,uniqueclassindicator2,x,x,4,x,x,x,x,125,0.032,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classB,uniqueclassindicator2,x,x,4,x,x,x,x,125,0.032,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classB,uniqueclassindicator2,x,x,4,x,x,x,x,125,0.032,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classA,uniqueclassindicator3,x,x,4,x,x,x,x,125,500,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classA,uniqueclassindicator3,x,x,4,x,x,x,x,125,500,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classA,uniqueclassindicator3,x,x,4,x,x,x,x,125,500,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classA,uniqueclassindicator3,x,x,4,x,x,x,x,125,500,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classC,uniqueclassindicator4,x,x,6,x,x,x,x,125,0.048,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classC,uniqueclassindicator4,x,x,6,x,x,x,x,125,0.048,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classC,uniqueclassindicator4,x,x,6,x,x,x,x,125,0.048,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classC,uniqueclassindicator4,x,x,6,x,x,x,x,125,0.048,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classC,uniqueclassindicator4,x,x,6,x,x,x,x,125,0.048,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classC,uniqueclassindicator4,x,x,6,x,x,x,x,125,0.048,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classA,uniqueclassindicator5,x,x,6,x,x,x,x,125,750,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classA,uniqueclassindicator5,x,x,6,x,x,x,x,125,750,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classA,uniqueclassindicator5,x,x,6,x,x,x,x,125,750,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classA,uniqueclassindicator5,x,x,6,x,x,x,x,125,750,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classA,uniqueclassindicator5,x,x,6,x,x,x,x,125,750,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
x,classA,uniqueclassindicator5,x,x,6,x,x,x,x,125,750,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x
非常感谢提前