44 lines
1.4 KiB
R
44 lines
1.4 KiB
R
library("readxl")
|
|
library("writexl")
|
|
library("dplyr")
|
|
library("xlsx")
|
|
library("stringi")
|
|
|
|
#Konfiguration einbinden
|
|
source("config/config.R")
|
|
source("sparql.R")
|
|
|
|
#Datenbank einlesen und doppelte entfernen
|
|
vorhanden_df <- data.frame(get_current_geoera_lit_db()$citation)
|
|
vorhanden_df_2 <- unique(vorhanden_df)
|
|
|
|
#Spaltenname setzen
|
|
colnames(vorhanden_df) <- (c(COLUMN_NAME))
|
|
|
|
#Excel mit den Zitaten die hinzugefügt werden sollen einlesen
|
|
neu_df <- data.frame(read_excel(paste(PFAD_EXCEL, "distincts_kontrolliert.xlsx", sep="")))
|
|
neu_df <- data.frame(lapply(neu_df, stri_enc_toutf8))
|
|
|
|
#die beiden Dataframes zusammenfügen (braucht gleiche Spaltennamen)
|
|
all_df <- rbind(vorhanden_df, neu_df)
|
|
all_df_2 <- unique(all_df)
|
|
|
|
#inner_join finds common elements between two data frames
|
|
#anti_join finds elements the are exclusively in one of the data frames
|
|
|
|
#Gemeinsame Element finden
|
|
common <- inner_join(neu_df, vorhanden_df)
|
|
|
|
#Finde die Element die noch nicht in der Datenbank sind
|
|
not_in_db <- anti_join(neu_df, common)
|
|
|
|
#Variante 2
|
|
not_in_db_2 <- anti_join(all_df, vorhanden_df)
|
|
|
|
#Die der Uniques in eine Datei schreiben
|
|
write_xlsx(not_in_db, paste(PFAD_OUT, "not_in_db_",format(Sys.time(), "%Y_%m_%d") ,".xlsx", sep=""))
|
|
|
|
#### TO DO ####
|
|
# Die direkte Vergleichsfunktion durch die %-Match-Funktion aus 03 ersetzen.
|
|
# Ist etwas heikler, sollte aber weiterhin ganz gut funktionieren.
|
|
# Gehört komplett ausprogrammiert und getest.
|