Seite 2 von 2

Re: Werte von mehreren Tabellen multiplizieren

Verfasst: Fr Okt 11, 2019 9:27 am
von bigben
So geht es beispielsweise cbind()

Code: Alles auswählen

engine <- read.csv("http://forum.r-statistik.de/download/file.php?id=724")
fleet <- read.csv("http://forum.r-statistik.de/download/file.php?id=723", row.names=1)
aggregate(fleet, list(engine$kW), mean)
So geht es mit cbind, wenn Du nur einen Teil des Dataframes übergibst:

Code: Alles auswählen

bound <- cbind(engine, fleet)
aggregate(bound[, 3:16], list(bound$kW), mean)
Und so geht es mit nachträglichem Löschen der störenden Spalten (dabei muss man ein paar Warnmeldungen aushalten):

Code: Alles auswählen

ergebnis <- aggregate(bound, list(bound$kW), mean)
ergebnis["Vesseltype"] <- NULL
ergebnis["kW"] <- NULL
print(ergebnis)

LG,
Bernhard

Re: Werte von mehreren Tabellen multiplizieren

Verfasst: Fr Okt 11, 2019 9:47 am
von ademi
bigben hat geschrieben: Fr Okt 11, 2019 9:27 am So geht es beispielsweise cbind()

Code: Alles auswählen

engine <- read.csv("http://forum.r-statistik.de/download/file.php?id=724")
fleet <- read.csv("http://forum.r-statistik.de/download/file.php?id=723", row.names=1)
aggregate(fleet, list(engine$kW), mean)
So geht es mit cbind, wenn Du nur einen Teil des Dataframes übergibst:

Code: Alles auswählen

bound <- cbind(engine, fleet)
aggregate(bound[, 3:16], list(bound$kW), mean)
Und so geht es mit nachträglichem Löschen der störenden Spalten (dabei muss man ein paar Warnmeldungen aushalten):

Code: Alles auswählen

ergebnis <- aggregate(bound, list(bound$kW), mean)
ergebnis["Vesseltype"] <- NULL
ergebnis["kW"] <- NULL
print(ergebnis)

LG,
Bernhard
super, danke schön! Die erste Lösung ohne cbind scheint für mich am elegantesten zu sein!

Liebe Grüße

Re: Werte von mehreren Tabellen multiplizieren

Verfasst: Fr Okt 11, 2019 11:26 am
von bigben
Das setzt halt alles voraus, dass die Reihenfolgen in beiden Dateien wirklich gleich sind. Falls das unsicher wäre, solltest Du statt cbind lieber merge verwenden.

LG,
Bernhard

Re: Werte von mehreren Tabellen multiplizieren

Verfasst: Fr Okt 11, 2019 12:26 pm
von Athomas
Falls das unsicher wäre, solltest Du statt cbind lieber merge verwenden.
Sehr richtig, ich würde das mal als eingebaute Sollbruchstelle bezeichnen :D !
Und das Verhalten gegenüber NA-Werten in der Aggregationsvariable muss man auch mögen...

Re: Werte von mehreren Tabellen multiplizieren

Verfasst: Fr Okt 11, 2019 2:08 pm
von ademi
Mal eine generelle Frage (sorry, aber Googeln hat nichts gebracht):

wie werden in R Sonderzeichen wie % oder Währungssymbole behandelt? bei % kann man es als Zahl und nicht als % abbilden, und wie geht man bei $ oder € vor? Ich habe jetzt versucht, Umsätze zu berechnen, d.h. Stückzahlen * Preis, zeigt aber NA...

LG
ademi

Re: Werte von mehreren Tabellen multiplizieren

Verfasst: Fr Okt 11, 2019 2:31 pm
von bigben
Hallo ademi,

bitte mach für neue Fragen einen neuen Thread auf, sonst wird das so schwer lesbar und auffindbar, wenn jemand anderes in Zukunft ähnliche Fragen hat.
bei % kann man es als Zahl und nicht als % abbilden, und wie geht man bei $ oder € vor?
Ich verstehe die Frage leider nicht. Vielleicht schreibst Du Beispielcode in die Fragebeschreibung hinein?

LG,
Bernhard

Re: Werte von mehreren Tabellen multiplizieren

Verfasst: Mo Okt 14, 2019 9:37 am
von ademi
bigben hat geschrieben: Fr Okt 11, 2019 2:31 pm Hallo ademi,

bitte mach für neue Fragen einen neuen Thread auf, sonst wird das so schwer lesbar und auffindbar, wenn jemand anderes in Zukunft ähnliche Fragen hat.

LG,
Bernhard
Guten Morgen, so mache ich das - die Anfrage in einem neuen Thread stellen! Danke

Re: Werte von mehreren Tabellen multiplizieren

Verfasst: Di Okt 15, 2019 12:45 pm
von ademi
Hallo Leute,

ich habe zu dem Multiplizieren von Tabellen noch folgende Frage:
ich habe als Spaltenüberschrift Jahren von 2015 bis 2028. Nun muss ich die Wert von 2016 nehmen, mit einem anderen Wert aus 2016 multiplizieren, aber das Ergebnis in 2015 ausgeben usw. In 2028 als Ergebnis soll dann 0 stehen, weil ich die Ursprungsdaten von 2029 und weiter nicht habe. Die Daten werden einfach jährlich erweitert.

Welche Möglichkeiten gibt es dazu? Wäre für Eure Hilfe dankbar!

LG
ademi