两个 csv/excel 文件之间的模式识别和求和列

两个 csv/excel 文件之间的模式识别和求和列

我有两个文件,其中一个有每个人的开始日期、增量、晋升等详细信息,另一个文件有他们多年来的研究成果。能不能写一个脚本,让每个人的起始年份减去当前年份,然后将他们的研究进展作为 6 年趋势?这两个文件均为 CSV/XLSX 格式。问题是,由于每个人加入的年份不同,我无法编写一个脚本来解释它。我在下面给出了这两个文件的示例。

例子:-

文件 - 1

Authors/Years   1988    1989    1990    1991    1992    1993    1994 .... 2017
Mr. John Smith    0       0      10      12      32      23      12  ....  3
Mr. John Doera    1       2      30      1       32       3       2  ....  3
Mr. Avani thea    0       0      10      72      12       2      12  ....  3
..............
..............

....

文件 2:-

Name             Designation    Dept    DOJ         LastPrDate  NextPrDate  
Mr. Avani thea    Assoc.Prof    AE     31/10/2006   03/29/2014  03/29/2020
Mr. John Doera    Assis.Prof    CE     11/09/1996   03/02/2004  03/9/2010
John Smith        Professor     ME     1/11/2004    01/11/2000  03/9/2001
..............
..............

预期结果。 文件 2:-

Name             Designation    DOJ         1st-six year   2nd-six year 3rd-six year  
Mr. Avani thea    Assoc.Prof    31/10/2006      10            20                 3
Mr. John Doera    Assis.Prof    11/09/1996      8             9                 3   
John Smith        Professor     1/11/2004        0            12                 13
..............
..............

这两个文件都包含不常见的名称,因此问题是将它们相互排除,并且性能也应在其加入日期之后计算,即排除加入之前的任何研究。数据还有更多行。

答案1

看一下与awk结合使用的paste命令。

如果两个文件中的数据顺序相同,则可以将它们合并为一个。

接下来,您应该能够使用 awk 查找字段来获取所需的信息,甚至计算或放置 if 条件。

相关内容