Ich habe einen Datenrahmen mit mehreren Spalten mit unterschiedlichen Bereichen nach Ort. In einer anderen Spalte habe ich einen Dichtewert. Ich würde gerne wissen, wie man eine neue Tabelle (idealerweise durch eine Schleife) mit jedem Bereich multipliziert mit der Dichte erstellt. Meine Datenrahmen wie folgt aussieht:Multiplizieren Sie eine Anzahl von Spalten mit einer bestimmten Spalte
X Area1 Area2 Area3 Area4 Density
A 10.1 12 20 25 0.04
B 4.2 7.3 30 35 0.05
C 5.3 9.6 10 15 0.07
D 0.2 0.3 2 3 0.01
Ich scheine eine ähnliche Frage an: Multiply many columns by a specific other column in R with data.table? aber keinen Weg finden, um es anzupassen für meine Daten zu arbeiten. Vielen Dank :)
Wenn 'dt' ist Ihr * data.table *:' dt [, 2: 5: = lapply (.SD, '*', Dichte). SDcols = 2: 5] [] '? – Jaap
@Jaap, alles, was sie tun müssen, ist eine Kopie, der Rest ist doppelt, nein? –
@docendodiscimus ja, fügte aber eine Antwort hinzu, weil OP offensichtlich nicht klar war; Ich habe auch einen Link zur Standard 'copy' Frage hinzugefügt, die es imo kompletter macht – Jaap