Python 比较两个文件的第二列,计算增加或减少的百分比
我想比较file1(逗号后的数值)和file2(逗号后的数值),并显示百分比的增加或减少Python 比较两个文件的第二列,计算增加或减少的百分比,python,list,Python,List,我想比较file1(逗号后的数值)和file2(逗号后的数值),并显示百分比的增加或减少 file1.csv item1,100 item2,150 item3,250 item4,550 item5,400 item6,125 file2.csv item1,160 item2,180 item3,190 item4,1100 item5,100 item6,510 Result.csv item1 +60% item2 +20% item3 -24% item4 +100% ite
file1.csv
item1,100
item2,150
item3,250
item4,550
item5,400
item6,125
file2.csv
item1,160
item2,180
item3,190
item4,1100
item5,100
item6,510
Result.csv
item1 +60%
item2 +20%
item3 -24%
item4 +100%
item5 -75%
item6 +308%
这一次你会想调查一下熊猫 这样的办法应该行得通
将熊猫作为pd导入
data1=pd.read\u csv('file1.csv',header=None,names=['id','val\u 1']))
data2=pd.read\u csv('file2.csv',header=None,names=['id','val\u 2']))
数据1\
.merge(数据2,on='id')\
.assign(结果=lambda数据:data.val_2/data.val_1-1)\
.filter(['id','result']))\
.to_csv('Result.csv',header=None,index=False)
您尝试过什么?我会研究使用熊猫来处理这样的数据。我没有,但我现在还在搜索。我已经读过了。如果在结果的末尾有%符号很重要,请告诉我,我可以修改代码。如果要将数字写入文件,我通常不喜欢将数字转换为字符串。谢谢。如何在屏幕上逐行打印结果,而不是直接将其写入result.csv?例如,如果我只想在result.csv中写入增量大于3%的行,该怎么办?您可以删除代码的最后一行。如果从代码中排除“\.to\\ csv('Result.csv',header=None,index=False)”,则应自动打印到控制台。如果没有,请尝试使用.head()
。