我不知道是否要將每行「Top1」,「Top2」,「Top3」中的條目合併成一個條目,或者只是希望它們堆疊在一起。 在第一種情況下,你也許可以做這樣的事情:
df.new<- data.frame(Date = df$Date, Label = df$Label,
Topic = with(df, paste(Top1, Top2, Top3, sep = " ")))
# or whatever else you want the separator to be, i.e. sep = "," or sep = "-"
在第二種情況下,你可以嘗試:
df.new<- melt(df, id.vars = c("Date", "Label"))
UPDATE: 也許你可以嘗試類似這個:
df.new2<- cbind(df$Date, df$Label, apply(df[,c("Top1", "Top2", "Top3")], 1,
function(x) list(x)))
colnames(df.new2)<- c("Date", "Label", "Topics")
請注意,這是一個矩陣。如果你想訪問的主題,你必須做df.new2[,"Topics"]
。
月2日更新:
Topics<- split(df[,c("Top1", "Top2", "Top3")], df$Date)
names(Topics) # this will give you the dates
另外,請嘗試發佈數據的一小部分(不是圖像),優選輸出的一個例子,以便它更易於使用。
對不起,這不起作用,即使不是數據框,即使是2d列表也可以工作。 錯誤:參數意味着行數不同:0,1 – Mk47