整理R

时间:2018-10-27 12:51:49

标签: r dataset large-data

我有一个数据集,其中包含一些跨不同商店的8种除臭剂品牌的观察数据(数据是虚构的)。观察到的数据是:

  • 周:进行观察的一周
  • 连锁店:进行观察的商店
  • 品牌:观察到的除臭剂品牌
  • 销售:销量
  • 价格:超市购买产品的价格
  • 零售价:将品牌出售给客户的价格
  • 展示次数:与该品牌当时获得展示机会的数量成正比的数字
  • 特征:与品牌当时获得的特征机会数量成正比的数字
  • DisplayFeature:与该品牌当时(在同时具有功能和展示机会的情况下)获得的功能和展示机会的数量成正比的数字

对我来说,表示此数据的最合乎逻辑的方法是将上面列出的每个变量组织在一个列中,其中每一行对应一个观察值。但是,我得到的数据文件显示如下:

该品牌没有变量列,而是所有其他变量都“分散”在品牌上,即:存在一个名为“ DOVESales”的列,该列中的每个元素都是该产品的销售额鸽子除臭剂在这个特定的时间点。还有一个名为“ DOVEPrice”的列,其中该列的每个元素都是该星期内鸽子除臭剂的价格,等等。

因此原始数据文件中第一行的前13列如下所示: First observation, showing the first 13 columns

而我数据框中的第一行应如下所示: enter image description here

我试图使用tidyr collect()函数将宽数据转换为长数据,并使用以下代码:

df <- df.raw %>% gather(Brand, Sales, 2:10) %>% 
                        gather(Brand, Price, 2:10) %>% 
                          gather(Brand, RPrice, 2:10) %>% 
                            gather(Brand, Display, 2:10) %>% 
                              gather(Brand, Feature, 2:10) %>%
                                gather(Brand, DisplayFeature, 2:10) %>%
   View()

但是我的数据框将包含十亿行以上,并且文件太大而无法打开。有谁知道整理这种数据的正确方法是什么?

0 个答案:

没有答案