在 R 中重塑数据(table)
reshape the data (table)in R
我有如下数据集,
myDat <- read.csv("http://mamajumder.github.io/data-science/data/reshape-source.csv")
kable(myDat)
想要重塑数据并产生以下输出:
| player|variable | A| B| C|
|------:|:--------|---:|---:|---:|
| 1|walking | 408| 359| 359|
| 1|cycling | 23| 45| 39|
| 2|walking | 406| 386| 401|
| 2|cycling | 43| 30| 46|
| 3|walking | 418| 401| 392|
| 3|cycling | 42| 45| 43|
并且我使用函数melt
,但仍然无法获得输出。是否有任何可用的方法可以按所需格式重塑数据集?谢谢
myDat1 <- melt(myDat,id='player')
当你说你无法得到输出时,你应该与我们分享你的尝试,以便我们看到哪里出了问题
library(reshape2)
m <- melt(myDat, id.vars = c("player", "track"), measure.vars = c("walking", "cycling"))
dcast(m, player + variable ~ track)
# player variable A B C
#1 1 walking 408 402 386
#2 1 cycling 43 31 41
#3 2 walking 373 404 422
#4 2 cycling 53 41 30
#5 3 walking 403 393 422
#6 3 cycling 25 46 48
请注意,输出与您的图片不一样。
我有如下数据集,
myDat <- read.csv("http://mamajumder.github.io/data-science/data/reshape-source.csv")
kable(myDat)
想要重塑数据并产生以下输出:
| player|variable | A| B| C|
|------:|:--------|---:|---:|---:|
| 1|walking | 408| 359| 359|
| 1|cycling | 23| 45| 39|
| 2|walking | 406| 386| 401|
| 2|cycling | 43| 30| 46|
| 3|walking | 418| 401| 392|
| 3|cycling | 42| 45| 43|
并且我使用函数melt
,但仍然无法获得输出。是否有任何可用的方法可以按所需格式重塑数据集?谢谢
myDat1 <- melt(myDat,id='player')
当你说你无法得到输出时,你应该与我们分享你的尝试,以便我们看到哪里出了问题
library(reshape2)
m <- melt(myDat, id.vars = c("player", "track"), measure.vars = c("walking", "cycling"))
dcast(m, player + variable ~ track)
# player variable A B C
#1 1 walking 408 402 386
#2 1 cycling 43 31 41
#3 2 walking 373 404 422
#4 2 cycling 53 41 30
#5 3 walking 403 393 422
#6 3 cycling 25 46 48
请注意,输出与您的图片不一样。