У меня есть CSV-файл, который содержит пару ключ-значение, и меня просят объединить все значения, связанные с одним и тем же ключом, в одну строку. Например:
Key,Col1,Col2,Col3
A, 1, A1, C9
A 2, C9, C1
A, 5, C1, C4
B, 7, A8, C5
D, 10 A2, C3
ОБНОВЛЕНОрезультаты, так как в первой строке произошла ошибка \
Это должно привести к следующему: ЗАПИСИ для значения ключа кадра данных
Key,NewCol
A,A1:1:C9:C9:2:C1:C1:5:C4
B,A8:7:C5
D,A2:10:C3
Как видите, они мне нужныв порядке непрерывности по ключу Для записей с ключом = A: ряд должен быть в следующем порядке: значение Col2-Col3 A1 - C9 Тогда следующая запись должна иметь значение Col2-Col3 C9 - XXЗаписи не всегда находятся в правильной последовательности строк, поэтому мне нужно убедиться, что это выполнено, поскольку я сохраняю запись
Я начал делать это и читать CSV и проверять каждое чтение с соответствующимзначение ключа и затем корректировка значения значения, если ключ существует или нет.
import csv
df = []
with open('example.csv') as csvfile:
readCSV = csv.reader(csvfile, delimiter=',')
for row in readCSV:
if df.loc[df.key == row[0]]:
exist_value = df[value]
df[value] = exist_value + row[2]+":"+row[1]+":"+row[3]
else:
df[key] = row[0]
df[value] = row[2]+":"+row[1]+":"+row[3]
Вопрос: 1. Есть ли более эффективный способ сделать это?У меня есть большой файл для чтения, и я должен выполнить дополнительную обработку, например: