2017-03-07 2 views
0
namens

So habe ich eine Matrix mit 2 Spalten, zuerst den Namen, die zweite einige Inhalte wieR Erstellen Matrix durch Spalten Vektor

name content 
ID1 1,2,3,4 
ID2 1,2,3,4,5,6 
ID3 1,2,3 

Der Inhalt unterschiedliche Längen hat, und die Aufteilung der Inhalt selbst ist kein Problem. Nach dem Split verwende ich eine bestimmte Funktion func (x). Am Ende möchte ich diese Ausgabe erhalten:

name content 
ID1  func(1) 
ID1  func(2) 
ID1  func(3) 
ID1  func(4) 
ID2  func(1) 
ID2  func(2) 
ID2  func(3) 
ID2  func(4) 
ID2  func(5) 
ID2  func(6) 
ID3  func(1) 
ID3  func(2) 
ID3  func(3) 

Ich suchte nach bestimmten Fragen, fand aber nichts passendes. Danke im Voraus!

Antwort

0

Zum Beispiel

library(tidyverse) 
library(magrittr) 
func <- function(x) multiply_by(x, 100) 
df %>% 
    separate_rows(content, convert = T) %>% 
    mutate(content = func(content)) 
# name content 
# 1 ID1  100 
# 2 ID1  200 
# 3 ID1  300 
# 4 ID1  400 
# 5 ID2  100 
# 6 ID2  200 
# 7 ID2  300 
# 8 ID2  400 
# 9 ID2  500 
# 10 ID2  600 
# 11 ID3  100 
# 12 ID3  200 
# 13 ID3  300