Variablen in R script

Wie rufe ich R-Funktionen auf, wie selektiere ich Daten, ich weiß nicht genau ....

Moderatoren: EDi, jogo

Antworten
Aaron
Beiträge: 20
Registriert: Di Nov 07, 2023 9:11 am

Variablen in R script

Beitrag von Aaron »

Ist es möglich Variablen im R script auszuführen?

Code: Alles auswählen

#!/bin/sh

symbol="Beam"
year="2022"
suffix=".duckdb"

echo $symbol_$year$suffix
LG,
Aaron
Athomas
Beiträge: 769
Registriert: Mo Feb 26, 2018 8:19 pm

Re: Variablen in R script

Beitrag von Athomas »

Sag doch einfach mal, was Du "im Großen" vorhast.
Wir (speziell ich :D ) sind müde, bei Ansätzen mitzuhelfen, die absehbar in die Irre führen...
Aaron
Beiträge: 20
Registriert: Di Nov 07, 2023 9:11 am

Re: Variablen in R script

Beitrag von Aaron »

Ich habe wie gesagt, eine große Anzahl von csv Dateien, mit denen ich einige statistische Berechnungen durchführen möchte. Das Einlesen der Daten in die Datenbank funktioniert einwandfrei. Die Tabellen werden richtig angezeigt. Das Problem mit dem Datum scheine ich auch in den Griff bekommen zu haben. Der Datensatz besteht aus 3 Spalten.

Variablen:
Ich bekomme auch csv Dateien mit anderen Namen, mit denen die selben Berechnungen durchgeführt werden sollen. Ich will, wie einem shell Skript nur die Jahreszahlen und Namen der Datensätze in Variablendeklaration austauschen und nicht bei jedem neuen Datensatz durch das Skript gehen müssen.

Berechnungen:
1. Ich möchte den höchsten Wert aus Spalte Beta berechnen. Als Ergebnis möchte ich das Datum, die Uhrzeit und den Höchstwert angezeigt bekommen.
2. Ich möchte in jeder Zeile von Alpha den Wert aus Zeile Beta abziehen (s = Alpha - Beta)

Es sind noch 15 weitere Berechnungen durchzuführen. Am Ende will ich die Ergebnisse in Latex einfügen. Ich weiß, dass `R` auch mit Latex umgehen kann.

Ich möchte allen hier im Forum Danke sagen für die Hilfe.
LG,
Aaron
Athomas
Beiträge: 769
Registriert: Mo Feb 26, 2018 8:19 pm

Re: Variablen in R script

Beitrag von Athomas »

Ich will, wie einem shell Skript nur die Jahreszahlen und Namen der Datensätze in Variablendeklaration austauschen und nicht bei jedem neuen Datensatz durch das Skript gehen müssen.
Das kannst Du problemlos innerhalb von R lösen! Schau Dir mal file.path(), paste() bzw. paste0() und evtl. list.files() an!
1. Ich möchte den höchsten Wert aus Spalte Beta berechnen.
Dafür reicht es, die Höchstwerte in den 200 Teildateien zu kennen - und davon den größten zu nehmen!
2. Ich möchte in jeder Zeile von Alpha den Wert aus Zeile Beta abziehen (s = Alpha - Beta)
Das kann man in jeder Teildatei machen, ohne die restlichen im Zugriff zu haben!?
Es sind noch 15 weitere Berechnungen durchzuführen.
Sind die auch so einfach? Bis hierhin wird das "Datum" eigentlich nicht "zum Rechnen" - sondern lediglich als Label - benutzt!
So gesehen könnte man sich die aufwändige Konvertierung (etwa nach POSIXct) sparen!?
bigben
Beiträge: 2781
Registriert: Mi Okt 12, 2016 9:09 am

Re: Variablen in R script

Beitrag von bigben »

Hallo Aaron,
Aaron hat geschrieben: Do Nov 09, 2023 12:13 pmDas Einlesen der Daten in die Datenbank funktioniert einwandfrei. Die Tabellen werden richtig angezeigt. Das Problem mit dem Datum scheine ich auch in den Griff bekommen zu haben.
Cool. Sei doch bitte so nett und schreib das in die beiden Thread dazu - wenn jemand anderes dieses Forum nach DuckDB durchsucht und Deine Beiträge findet ist es schön, wenn er bei der Frage gleich findet, was jetzt die passende Antwort war.
Ich bekomme auch csv Dateien mit anderen Namen, mit denen die selben Berechnungen durchgeführt werden sollen.

R hat eine Funktion commandArgs(). Das ist der offiziell vorgesehene Weg, Argumente im Funktionsaufruf aus der Shell heraus in R Programmen zu verarbeiten. Wenn Du in einer Suchmaschine "R commandArgs" eingibst, findest Du sehr viel Hilfe dazu.

Wenn Du in Windows unterwegs sein solltest könnten Dir auch die Funktionen choose.dir() und choose.files() aus dem utils package nützlich sein. Damit kann man in einem RSkript eine Fileauswahldialog öffnen.

LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Antworten