Преобразовать журнал записей (csv) в список имен на основе того, были ли они введены каждый день - PullRequest
0 голосов
/ 20 января 2019

У меня есть необработанная распечатка из системы безопасности, которая записывает и регистрирует действия, предпринятые системой.

Руководитель учреждения хочет иметь отчет со списком имен на основе того, были ли они введены в этот день.

т.е.
17/1/2019
Джон Смит
Бет Хук
16/1/2019
и т.д.

Файл CSV: https://drive.google.com/open?id=1ABj1gxFG-1j41jai6_TjXsezHXvd2qQL
* Имена были изменены, чтобы защитить личность клиентов

Он уже предоставляет имена пользователей, поэтому я думаю, что шаги будут:

  1. Получить дату
  2. Проверить имя
  3. Если ноль, игнорировать
  4. остальное, проверьте массив имен
  5. Если ничего не существует, Добавить в массив
  6. Иначе, игнорировать
  7. Повторите

Можно экспортировать CSV для каждого дня, поэтому программе не обязательно интерпретировать несколько дат одновременно.

Я не знаю, как использовать python, который представляется большинством решений, поэтому любая помощь очень ценится. Хотя я не против, на каком языке это написано, или мне нужно устанавливать другие программы.

Заранее спасибо.

1 Ответ

0 голосов
/ 20 января 2019

С Миллером (http://johnkerl.org/miller/doc) утилита командной строки, с

mlr --csv filter '$User=~".+"' then cut -o -f Date,User \
then uniq -a "Example Report.csv" | \
mlr --csv --headerless-csv-output  nest --implode --values --across-records -f User | \
sed -r 's/(,|;)/\n/g'

у вас есть

17/1/19
Beth Hook
CEO
John Smith
16/1/19
Peter Man
Jess Hare
Finn Tomb
John Smith
Finance
15/1/19
CEO
Peter Man
member 34
Beth Hook
John Smith
14/1/19
SYSTEM USER
Bin Stick
Peter Man
CEO
Partner
L Stick
Tie Cooler
member 16
John Smith
13/1/19
Partner
Peter Man
11/1/19
Wheels Hireman
Bunny
10/1/19
Bunny
member 36
Mary Stone
9/1/19
Bunny
Jus Wall
member 36
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...