长到宽数据 - 每第N行

时间:2015-11-30 06:50:11

标签: r reshape2 tidyr rvest

我正在编写一个新脚本,我从网站上提取(rvest)一个html表。数据是一致的格式,但值每天都在变化。

当表格被刮入时,它会以长格式显示。虽然逻辑上可以对数据进行分组,但我希望将数据从长格式转换为宽格式。每个新变量之间有15行...是否有函数,或使用tidyr / reshape2等可用于实现所需结果的包?

快速示例,仅考虑列表中的1个变量:

A.1
A
Name A
-1
0
18:05
00:00
0:50
2
(no value presented, will replace with 0 in my code later on)
(no value presented, will replace with 0 in my code later on)
1
1
4
13

期望的结果:

A.1  A  Name A  -1  0  18:05  00:00  0:50 2  0  0  1  1  4  13

它将重复约1000-1200行,我将每天运行此代码。

提前致谢!

1 个答案:

答案 0 :(得分:0)

鉴于您的数据框架,

View(t(as.data.frame(split(df, (as.numeric(rownames(df))-1) %/% 15))))

你可以按如下方式将它打成一行(不需要任何包装):

NA

从这里开始,您需要继续...替换NSArray *sortedKeys = [dict.allKeys sortedArrayUsingSelector: @selector(compare:)]; NSMutableArray *sortedValues = [NSMutableArray array]; for (NSString *key in sortedKeys) { [sortedValues addObject: dict[key]]; } 并根据您的喜好修改数据类型等。