在R中创建“数据透视表”,每行填充因子值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在R中创建“数据透视表”,每行填充因子值相关的知识,希望对你有一定的参考价值。
我想把日期输入这样:
library(plyr)
names(ChickWeight) <- tolower(names(ChickWeight))
ChickWeight$diet.name <- as.factor(revalue(ChickWeight$diet, c("1" = "Grain", "2" = "Grubs", "3" = "Scraps", "4" = "Free Range")))
创造:
> head(ChickWeight)
weight time chick diet diet.name
1 42 0 1 1 Grain
2 51 2 1 1 Grain
3 59 4 1 1 Grain
4 64 6 1 1 Grain
5 76 8 1 1 Grain
6 93 10 1 1 Grain
> tail(ChickWeight)
weight time chick diet diet.name
573 155 12 50 4 Free Range
574 175 14 50 4 Free Range
575 205 16 50 4 Free Range
576 234 18 50 4 Free Range
577 264 20 50 4 Free Range
578 264 21 50 4 Free Range
从这些数据中,提取另一组数据(chick.feed
),如下所示:
chick diet.name
1 Grain
2 Grain
. .
. .
. .
21 Grubs
22 Grubs
. .
. .
. .
31 Scraps
32 Scraps
. .
. .
. .
49 Free Range
50 Free Range
即,我想创建一个“数据透视表”(chick.feed
),其中每行的计算值(此处,每个chick
)是该小鸡的所有各行的字母值(R-speak中的“因子”)在ChickWeight
。
(我的问题似乎与this one about converting from long to wide data相似但不完全相同。)
答案
无需重塑。只需抓住所需的列并保留唯一的行:
unique(ChickWeight[ , c("chick", "diet.name")])
以上是关于在R中创建“数据透视表”,每行填充因子值的主要内容,如果未能解决你的问题,请参考以下文章
在 LibreOffice Base 中创建等效数据透视表的 SQL (HSQLDB) 查询
如屏幕截图中所述,我想在 SQL 中创建一个数据透视表 [重复]