Ich habe einen Datensatz,Erstellen einer Spalte basierend auf Reihen Bedingungen
user_id Gap itr visit_no.(desired column)
a 0.3 1 1
a 0.5 1 1
a 1.5 1 1
a 0.9 1 2
a 2.6 1 2
a 0.34 1 3
a 0.8 2 1
a 0.34 2 1
b 1.6 1 1
b 0.7 1 2
b 0.8 1 2
b 0.7 1 2
b 4.8 2 1
b 0.39 2 2
b 0.38 2 2
b 0.89 2 2
I Spalte erstellen möchten wie folgt aussieht (visit_no.). Immer wenn die Lücke größer als 1 ist, müssen wir visit_no erhöhen. In den nächsten Zeilen wird der Wert um 1 erhöht, und bis wir einen anderen Wert> 1 finden, würden wir die Seriennummer in aufsteigender Reihenfolge fortschreiben. Wenn die Lücke kleiner als 1 ist, würde der Wert von visit_no in vorherigen Reihen von visit_no angegeben. Und visit_no. immer von 1 für einen Benutzer beginnen würde und itr ..Visit_No Säule wurde von user_id und itr
die Datenrahmen
df<-data.frame(user=c("a","a","a","a","a","a","a","a","b","b","b","b","b","b","b","b")
, gap=c(0.3,0.5,1.5,0.9,2.6,0.34,0.8,0.34,1.6,0.7,0.8,0.7,4.8,0.39,0.76,0.72),
itr=c(1,1,1,1,1,1,2,2,1,1,1,1,2,2,2,2))
Können Sie bitte Ihre gewünschte Spalte überarbeiten? Alle Werte einschließen und sicherstellen, dass sie korrekt sind – Sotos
Die gewünschte Ausgabe sieht nicht sehr gut formatiert aus ... ist Gap 0.034 in Zeile 6? Was ist mit all dem a und b in deiner ersten Spalte? Es ist mir nicht ganz klar, was du machen willst. – guscht
Ja 6. Reihe der Lücke ist 0.34 ..... Daten sind richtig formatiert –