Re: [問題] 請問如何擴展相同class的資料
最先想到的,是先把ALL的值取代成原本LEVEL的VALUE
(取代成用逗號分隔開來的字串,以本例來說就是"1,2,3")
然後再展開
ID=c(1234,5678,91011,111213,445566)
EQP=c('ABC','CDE','FFF','EEE','QEW')
class=c(1,2,3,'ALL','ALL')
df=data.frame(ID,EQP,class)
# 使用tidyr套件的separate_rows()
library(tidyr)
df[which(df$class=="ALL"),"class"] <- "1,2,3"
separate_rows(df,class,convert = T)
*補充:
參數 convert=T 表示如果欄位class的型別是numeric,integer或logical
則會自動將字串轉成對應的型別
https://i.imgur.com/NTaX9Ea.jpg

最直覺的思路,剛好發現有現成的function就拿來用了
獻醜歹勢:P
※ 引述《getsimple (getsimple)》之銘言:
: [問題類型]:
: 程式諮詢
: [軟體熟悉度]:
: 使用者
: [問題敘述]:
: 我有點不知如何一句話敘述問題
: 因此標題打得不好請見諒~
: 目前遇到一筆資料class的部分有非常多都是用ALL
: 但我需要讓他變成一般表示的方式(也就是圖中的class 1~3)
: 因為我中間用了大量的字串paste在一起做compare
: 因此無法資料如果是ALL我就會比對失敗
: 換句話說
: 我想要將下圖中的資料做變換
: 要完整copy整個raw的data且class擴展開來
: 拜託各位大大幫忙
: 感恩感恩
: https://i.imgur.com/y8Ql5qP.jpg

: [程式範例]:(只是一個dataframe的example)
: ID=c(1234,5678,91011,111213,445566)
: EQP=c('ABC','CDE','FFF','EEE','QEW')
: class=c(1,2,3,'ALL','ALL')
: df=data.frame(ID,EQP,class)
: [關鍵字]:
: 展開資料
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.137.187.29 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1632665203.A.310.html
※ 編輯: locka (223.137.187.29 臺灣), 09/26/2021 22:32:52
※ 編輯: locka (223.137.187.29 臺灣), 09/26/2021 23:22:25
→
09/27 00:59,
3年前
, 1F
09/27 00:59, 1F
推
09/27 23:43,
3年前
, 2F
09/27 23:43, 2F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
R_Language 近期熱門文章
PTT數位生活區 即時熱門文章