R 資料重塑

金木大大大發表於2023-12-21

  在R語言中,資料重塑(Data Reshaping)是指將資料從一種形式轉換為另一種形式,以適應不同的分析需求或資料結構。資料重塑常用於資料清洗、準備和分析的過程中。


  在R中,可以使用reshape()函式和tidyverse包中的pivot_longer()和pivot_wider()函式等來進行資料重塑操作。


  以下是一些常見的資料重塑操作示例:


  寬資料轉換為長資料:


  使用reshape()函式:


  #建立寬資料


  wide_data<-data.frame(id=c(1,2,3),


  var1=c(10,20,30),


  var2=c(100,200,300))


  ;//爬蟲IP獲取;


  #將寬資料轉換為長資料


  long_data<-reshape(wide_data,idvar="id",varying=c("var1","var2"),


  v.names="value",times=c("var1","var2"),


  timevar="variable",direction="long")


  使用pivot_longer()函式(tidyverse包):


  library(tidyverse)


  #建立寬資料


  wide_data<-data.frame(id=c(1,2,3),


  var1=c(10,20,30),


  var2=c(100,200,300))


  #將寬資料轉換為長資料


  long_data<-pivot_longer(wide_data,cols=c(var1,var2),


  names_to="variable",values_to="value")


  長資料轉換為寬資料:


  使用reshape()函式:


  #建立長資料


  long_data<-data.frame(id=c(1,1,2,2,3,3),


  variable=c("var1","var2","var1","var2","var1","var2"),


  value=c(10,100,20,200,30,300))


  #將長資料轉換為寬資料


  wide_data<-reshape(long_data,idvar="id",timevar="variable",


  direction="wide")


  使用pivot_wider()函式(tidyverse包):


  library(tidyverse)


  #建立長資料


  long_data<-data.frame(id=c(1,1,2,2,3,3),


  variable=c("var1","var2","var1","var2","var1","var2"),


  value=c(10,100,20,200,30,300))


  #將長資料轉換為寬資料


  wide_data<-pivot_wider(long_data,names_from="variable",values_from="value")


  以上示例展示瞭如何將寬資料轉換為長資料和將長資料轉換為寬資料的常見方法。根據具體的資料結構和需要,可以靈活地使用這些函式來進行資料重塑操作。同時,還可以進一步瞭解和學習R中其他資料重塑的方法和技巧,以滿足更復雜的資料處理和分析需求。


來自 “ ITPUB部落格 ” ,連結:https://blog.itpub.net/70032566/viewspace-3000860/,如需轉載,請註明出處,否則將追究法律責任。

相關文章