0
我有一個具有12個觀測和3個變量R:可變的水平分割成兩個變量
df <- read.table(text = c("
SiteID scenario value
site1 measured_raw21 55
site1 measured_raw22 60
site1 simulated_raw21 54
site1 simulated_raw22 59
site1 measured_adj21 23
site1 measured_adj22 27
site1 simulated_adj21 22
site1 simulated_adj22 28
site1 meaured_0.5 40
site1 meaured_0.8 55
site1 simulated_0.5 40
site1 simulated_0.8 57"), header =T)
在該DF一個data.frame,我想的scenario
水平分爲兩列
> df
SiteID scenario value
1 site1 measured_raw21 55
2 site1 measured_raw22 60
3 site1 simulated_raw21 54
4 site1 simulated_raw22 59
5 site1 measured_adj21 23
6 site1 measured_adj22 27
7 site1 simulated_adj21 22
8 site1 simulated_adj22 28
9 site1 meaured_0.5 40
10 site1 meaured_0.8 55
11 site1 simulated_0.5 40
12 site1 simulated_0.8 57
輸出應該是這樣的
SiteID scenario scenario1 value
site1 measured raw21 55
site1 measured raw22 60
site1 simulated raw21 54
site1 simulated raw22 59
site1 measured adj21 23
site1 measured adj22 27
site1 simulated adj21 22
site1 simulated adj22 28
site1 meaured 0.5 40
site1 meaured 0.8 55
site1 simulated 0.5 40
site1 simulated 0.8 57
任何建議如何R中做到這一點?
非常感謝奧利弗您的時間和幫助的選項。 如果關卡看起來像'simulated_raw21_nodrain'會怎麼樣?任何建議如何將其分成兩個「模擬」和「raw21_nodrain」。 – aelwan
謝謝,但我的意思是隻有兩個參數 所以場景將''模擬'和scenario1將'raw21_nodrain' – aelwan
嘗試'reshape2'包'colsplit'。 'colsplit(df $ scenario,「_」,c(「scenario」,「scneario1」))' –