Скажите, что у меня есть два файла CSV:
csvfile1
:
name Dept City
sree, CSE, Bengaluru,
vatsasa, ECE, Hyd,
IT, VJA,
capini, Mech, TPTY,
DTP, Civil,kandra
Bengaluru,ECM, TVM,
sre, ECS, MNGL,
vatsas, Kochi,
Nano, TVM,
capmin, Tech,
DTP9, CSS, Kochi,
ESS, TVM,
sree0, RSS, MNGL,
csvfile2
:
name, Dept, City, Address
Я хотел бы проверить всестолбцы csvfile2
присутствуют в csvfile1
.
При наличии проверьте, содержит ли какой-либо из столбцов в csvfile1
пробелы.Если пробелы присутствуют, замените пробелы значением NULL
и запишите все столбцы в новый CSV-файл csvfile3
по столбцам.
Если их нет, напишите пропущенныестолбцы вместе с существующими до csvfile3
.Кроме того, значения этих пропущенных столбцов должны быть показаны как NULL
в csvfile3
, а пробелы в существующих столбцах следует заменить на NULL
Ниже приведен ожидаемый результат:
name Dept City Address
sree, CSE, Bengaluru,NULL
vatsasa, ECE, Hyd, NULL
NULL, IT, VJA, NULL
capini, NULL, Mech, NULL
DTP, Civil,NULL, NULL
Bengaluru,ECM, TVM, NULL
sre, ECS, MNGL, NULL
vatsas, NULL, Kochi, NULL
NULL, Nano, TVM, NULL
capmin, NULL, Tech, NULL
DTP9, CSS, Kochi, NULL
NULL, ESS, TVM, NULL
sree0, RSS, MNGL, NULL
Я написал следующий код:
f=open('csvfile2.csv', 'r')
g=csv.reader(f)
first=next(g, None)
print('lenght of first list', len(first))
f1=open('csvfile1.csv','r')
h=csv.reader(f1)
second=next(h,None)
print('lenght of first list', len(second))
f2=open('csvfile3', 'w')
writer=csv.writer(f2)
count=0
if len(second) < len(first):
for i in first:
if not i in second:
for count in range:
writer.writerows('Null')
print('null')
else:
ind=second.index(i)
for j in second:
if not j[ind]:
writer.writerows(j[ind].replace(' ','Null'))
else:
writer.writerows(j[ind])
Вывод вышеуказанного кода:
name, Dept, City, Address
N
U
L
L
N
U
L
L
N
U
L
L
N
U
L
L
N
U
L
L
Я написал код для экземпляра AWS EC2 и планируюиспользуйте то же самое для AWS Lambda тоже.