Seite 1 von 1

Bestimmte Zeilen aus Datensatz löschen

Verfasst: Mi Feb 24, 2021 12:17 pm
von lotti1798
Hej zusammen!
Ich habe einen Datensatz (angehängt), der besteht aus: Jahr, Monat, Tag, Niederschlagsdaten für verschiedene Stationen und in der letzten Spalte ist bei den Daten, die ich gerne behalten würde (jeweils von Anfang Mai bis Ende Oktober) eine 1 eingetragen, bei den Daten, deren Zeilen gelöscht werden sollen, ist eine 0 eingetragen.

Ich habe es damit versucht: (test_wrain ist die matrix aus der csv-Datei)

Code: Alles auswählen

for (i in 1:22281){
  if(test_wrain[i,10]==0){ # wenn in der letzten Spalte eine 0 steht,
    test_wrain[i,-(1:10)] # dann lösche die Zeile, in der die 0 ist.
  }
}
Das funktioniert so aber leider nicht...
Andere Möglichkeit wäre, für jedes Jahr die Monate 11-4 zu löschen, sodass für jedes Jahr nur noch die Monate 5-10 in der Matrix bleiben.

Ich würde mich sehr über Hilfe freuen! :)

Re: Bestimmte Zeilen aus Datensatz löschen

Verfasst: Mi Feb 24, 2021 12:41 pm
von Athomas
Da gibt es wieder 1000 Möglichkeiten (999 schicken Andere :) ), hier eine data.table-Variante:

Code: Alles auswählen

library(data.table)

komplett <- fread("P:/R/R Forum/Löschen/test/Test.csv")
Teil     <- komplett[V10==1]
Es ginge auch ohne die "0-1-Vorbereitung"!

Re: Bestimmte Zeilen aus Datensatz löschen

Verfasst: Mi Feb 24, 2021 1:02 pm
von lotti1798
Vielen Dank!
Das war ja nun wirklich keine schwierige Sache...

Re: Bestimmte Zeilen aus Datensatz löschen

Verfasst: Mi Feb 24, 2021 1:35 pm
von bigben
Naja, immerhin musste erstmal ein zip entpackt werden.