按列合并/附加两个csv文件,没有公共索引

2024-04-25 23:38:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个csv文件

csv1-I发出cmd命令并将其写入file1。你知道吗

timestamp     ref_id    rx        ry     tag      repeat    backoff
1561333986465   44   47.8312    11.0052  c_tag      0        0 
1561334690976   44   47.8312    11.0052  c_tag      1       1500
1561334703668   44   47.8312    11.0052  c_tag      2       1500

csv2—将该特定命令的结果发布到file2。你知道吗

tStart         source   trackingID  anchs   x        y    z
1561333987329   toa        0           8    96      2.5   4
1561334691738   toa        0           8    95.2    2.2   4
1561334693818   toa        0           8    98.5    3.7   4
1561334704328   toa        0           8    96.6    2.9   4
1561334706428   toa        0           8    95.8    2.6   4
1561334708517   toa        0           8    97.3    4.3   4

如果repeat设置为0,则命令运行一次,结果也发布一次。如果repeat=1,则命令运行两次,结果发布两次。因此,如果repeat设置为n,那么命令将运行n+1次,并将结果发布n+1次到csv2。我需要合并这两个文件,以便前7列发布命令,后7列发布结果。你知道吗


import csv

in_1_name = "/home/input.csv"
in_2_name = "/home/excel/output.csv"
out_name = "/home/merge/merged.csv"

with open(in_1_name) as in_1, open(in_2_name) as in_2, open(out_name, 'w') as out:
    reader1 = csv.reader(in_1, delimiter=";")
    reader2 = csv.reader(in_2, delimiter=";")
    writer = csv.writer(out, delimiter=";")
    for row1, row2 in zip(reader1, reader2):
        if row1[0] and row2[0]:
            writer.writerow([row1[0], row2[0]])

上面的代码只是将csv1到csv2的列合并在一起,因为两个csv之间没有什么共同点,所以我无法找到获得预期结果的方法。感谢您的帮助。你知道吗

expected result :

timestamp   ref_id  rx  ry  tag repeat  backoff tStart  source  trackingID  anchs   x   y   z
1561333986465   44  47.8312 11.0052 c_tag   0   0   1561333987329   toa 0   8   96  2.5 4
1561334690976   44  47.8312 11.0052 c_tag   1   1500    1561334691738   toa 0   8   95.2    2.2 4
X   X   X   X   X   X       1561334693818   toa 0   8   98.5    3.7 4
1561334703668   44  47.8312 11.0052 c_tag   2   1500    1561334704328   toa 0   8   96.6    2.9 4
X   X   X   X   X   X   X   1561334706428   toa 0   8   95.8    2.6 4
X   X   X   X   X   X   X   1561334708517   toa 0   8   97.3    4.3 4


Tags: csvnamein命令homeastagopen