У меня есть .csv
файл символьных строк (около 5400), которые, в дополнение к многим другим строкам, появляются в большом .txt
файле огромного корпуса.Мне нужно подсчитать вхождения каждой из 5400 строк в файле .txt
corpus.Я использую оболочку (у меня есть Macbook Pro), и я не знаю, как написать цикл for с вводом из одного файла, чтобы затем работать в другом файле.input_file.csv
выглядит следующим образом:
A_back
A_bill
A_boy
A_businessman
A_caress
A_chat
A_con
A_concur
A_cool
A_cousin
A_discredit
A_doctor
A_drone_AP_on
A_fellow
A_flatter
A_friend
A_gay
A_giddy
A_guilty
A_harangue
A_ignore
A_indulge
A_interested
A_kind
A_laugh
A_laugh_AP_at
...
corpus_file.txt
, который я просматриваю, представляет собой очищенный и лемматизированный корпус с одним предложением в строке;это 4 строки текста:
A_recently N_pennsylvania N_state_N_university V_launch a N_program that V_pay A_black N_student AP_for V_improve their N_grade a N_c AP_to N_c A_average V_bring 550 and N_anything A_high V_bring 1,100
A_here V_be the N_sort AP_of A_guilty N_kindness that V_kill
what N_kind AP_of N_self_N_respect V_be a A_black N_student V_go AP_to V_have AP_as PR_he or PR_she V_reach AP_out AP_to V_take 550 AP_for N_c N_work A_when A_many A_white N_student V_would V_be V_embarrass AP_by A_so A_average a N_performance
A_white N_student V_would V_be V_embarrass AP_by A_so A_average a N_performance
Я хочу точно подсчитать, сколько раз каждая строка в input_file.csv
появляется в corpus_file.txt
.Я могу сделать по одному с помощью следующего кода:
grep -c A_guilty corpus_file.txt
И через несколько секунд я получаю счетчик того, сколько раз A_guilty
появляется в corpus_file.txt
(он появляется один раз в битекорпус я положил сюда).Однако я не хочу делать это 5400 раз, поэтому я пытаюсь поместить его в цикл, который будет выводить каждую строку символов и ее количество.
Я попытался запустить приведенный ниже код:
for input_file.csv in directory/path/folder/ do grep -c corpus_file.txt done
Но это не работает.input_file.csv
и corpus_file.txt
находятся в одной папке, поэтому имеют один и тот же каталог.
Я надеюсь получить список из 5400 строк символов и количество раз, когда каждая строка появляется в большом файле corpus_file.txt
.Примерно так:
term - count
A_back - 2093
A_bill - 873
A_boy - 1877
A_businessman - 148
A_caress - 97
A_chat - 208
A_con - 633