ein paar kleine Änderungen

This commit is contained in:
Linsberger Christian 2021-09-08 08:59:22 +02:00
commit f72213f022
2 changed files with 5 additions and 9 deletions

View file

@ -45,7 +45,6 @@ not_in_db_2 <- c()
for (zeile_excel in 1:nrow(not_in_db)) { for (zeile_excel in 1:nrow(not_in_db)) {
#Current Excel ist das derzeit behandelte Zitate / Zelle #Current Excel ist das derzeit behandelte Zitate / Zelle
#current_excel <- tolower(not_in_db[zeile_excel, 1])
current_excel <- str_squish(not_in_db[zeile_excel, 1]) current_excel <- str_squish(not_in_db[zeile_excel, 1])
#Falls die aktuelle Zelle leer ist wird die nächste Iteration begonnen um Rechenleistung zu sparen #Falls die aktuelle Zelle leer ist wird die nächste Iteration begonnen um Rechenleistung zu sparen
@ -72,14 +71,12 @@ for (zeile_excel in 1:nrow(not_in_db)) {
#current_db <- tolower(inDB[zeile_db, 1]) #current_db <- tolower(inDB[zeile_db, 1])
current_db <- str_squish(inDB[zeile_db, 1]) current_db <- str_squish(inDB[zeile_db, 1])
#Zerlegt den Zelleninhalt und macht daraus eine Liste "Wort"liste aus alphanumerischen Zeichen, getrennt wird jeweils bei nicht-alphanumischen Zeichen #Zerlegt den Zelleninhalt und macht daraus eine Liste "Wort"liste aus alphanumerischen Zeichen, getrennt wird jeweils bei nicht-alphanumischen Zeichen
db_search_all <- unlist(strsplit(gsub("[^[:alnum:] ]", "", current_db), " +")) db_search_all <- unlist(strsplit(gsub("[^[:alnum:] ]", "", current_db), " +"))
#Legt eine Liste aus Zahlen zwischen 1900 & 2099 an, die in der aktuellen Zelle sind. (soll das Jahr der Publizierung finden) #Legt eine Liste aus Zahlen zwischen 1900 & 2099 an, die in der aktuellen Zelle sind. (soll das Jahr der Publizierung finden)
db_search_numbers <- unlist(str_extract_all(current_db, "(?:19|20)\\d{2}")) db_search_numbers <- unlist(str_extract_all(current_db, "(?:19|20)\\d{2}"))
#Initialiersierung der Countvariablen #Initialiersierung der Countvariablen
count_all <- 0 count_all <- 0
count_numbers <- 0 count_numbers <- 0
@ -88,7 +85,7 @@ for (zeile_excel in 1:nrow(not_in_db)) {
percent_match_all <- 0.01 percent_match_all <- 0.01
percent_match_numbers <- 0.01 percent_match_numbers <- 0.01
#Vierter(a) Schleifendurchlauf - Eruiert welche Elemente des Excel-Vektors im Datenbankvektors sind und zählt diese #Dritter(a) Schleifendurchlauf - Eruiert welche Elemente des Excel-Vektors im Datenbankvektors sind und zählt diese
for (k in 1:length(excel_search_all)) { for (k in 1:length(excel_search_all)) {
if (excel_search_all[k] %in% db_search_all) { if (excel_search_all[k] %in% db_search_all) {
@ -96,7 +93,7 @@ for (zeile_excel in 1:nrow(not_in_db)) {
} }
} }
#Vierter(b) Schleifendurchlauf - Eruiert welche Jahre des Excel-Vektors im Jahres-Datenbankvektors sind und zählt diese #Dritter(b) Schleifendurchlauf - Eruiert welche Jahre des Excel-Vektors im Jahres-Datenbankvektors sind und zählt diese
#Wird nur durchgeführt wenn beide Vektoren gefüllt sind #Wird nur durchgeführt wenn beide Vektoren gefüllt sind
if ((length(db_search_numbers) > 0) && (length(excel_search_numbers) > 0)) { if ((length(db_search_numbers) > 0) && (length(excel_search_numbers) > 0)) {
for (l in 1:length(excel_search_numbers)) { for (l in 1:length(excel_search_numbers)) {
@ -125,11 +122,10 @@ for (zeile_excel in 1:nrow(not_in_db)) {
} }
} }
#muss in einen Data-Frame umgewandelt werden um write_xlsx zu verwenden
not_in_db_2 <- data.frame(not_in_db_2) not_in_db_2 <- data.frame(not_in_db_2)
not_in_db_2 <- unique(not_in_db_2) not_in_db_2 <- unique(not_in_db_2)
colnames(not_in_db_2) <- (c(COLUMN_NAME)) colnames(not_in_db_2) <- (c(COLUMN_NAME))
#Die der Uniques in eine Datei schreiben #Die der Uniques in eine Datei schreiben
write_xlsx(not_in_db_2, paste(PFAD_OUT, "not_in_db_",format(Sys.time(), "%Y_%m_%d") ,".xlsx", sep="")) write_xlsx(not_in_db_2, paste(PFAD_OUT, "not_in_db_",format(Sys.time(), "%Y_%m_%d") ,".xlsx", sep=""))

View file

@ -100,7 +100,7 @@ for (spalte_excel in SPALTEN[1]:SPALTEN[length(SPALTEN)]) {
#Beim Jahr muss die Übereinstimmung höher sein, weil es ein sehr guter Indikator für die gleiche Publikation ist #Beim Jahr muss die Übereinstimmung höher sein, weil es ein sehr guter Indikator für die gleiche Publikation ist
if ((percent_match_all >= MATCH_ALL) && (percent_match_numbers > MATCH_YEAR)) { if ((percent_match_all >= MATCH_ALL) && (percent_match_numbers > MATCH_YEAR)) {
to_replace_done[zeile_excel, spalte_excel] <- str_remove_all(inDB[zeile_db,ID], "[<>]") to_replace_done[zeile_excel, spalte_excel] <- str_squish(str_remove_all(inDB[zeile_db,ID], "[<>]"))
} }
} }