2017-12-06 5 views
1

Ich versuche, die erste Spalte basierend auf . mit separate Funktion von tidyr zu teilen.spalte eine Spalte in mehrere Spalten - tidyr - Fehler

Ich kann jedoch nicht teilen, wie ich wollte. Ich habe eine Beispieleingabe und den Code, den ich ausprobiert habe, eingefügt.

Ich habe auch versucht mit extra Parameter, aber ich konnte nicht die gewünschte Ausgabe erhalten.

Irgendwelche Vorschläge würden geschätzt.

Eingangs

var  name  tis  score 
1  c.1.2.mi1.mi1_dup1.er.er2.er33.0..  t1  9.382828892992 
2  c.2.2.mi1.mi1_dup1.er.er2.er33.0..  t2  99.382828892992 
3  c.3.2.mi1.mi1_dup1.er.er2.er33.0..  t3  19.382828892992 

Ausgang

1  c  1  2  mi1  mi1_dup1  er  er2  er33 0  t1  9.382828892992 
2  c  2  2  mi1  mi1_dup1  er  er2  er33 0  t2  99.382828892992 
3  c  3  2  mi1  mi1_dup1  er  er2  er33 0  t3  19.382828892992 

Code

input %>% separate("name", ".") 

Fehler

Warning message: 
Too many values at 6 locations: 1, 2, 3 

Antwort

2

Sie haben die 11 Ausgabespalten nicht benannt:

> input %>% separate(name,into=letters[1:11], sep="\\.") 
    var a b c d e f g h i j k tis  score 
1 1 c 1 2 mi1 mi1 dup1 er er2 er33 0 t1 9.382829 
2 2 c 2 2 mi1 mi1 dup1 er er2 er33 0 t2 99.382829 
3 3 c 3 2 mi1 mi1 dup1 er er2 er33 0 t3 19.382829 
Verwandte Themen