处理包含可变数量数据帧的列表

时间:2019-04-04 21:53:13

标签: r list dataframe

我是R编程的新手,我正在寻找下一个问题的建议。

我有一个包含可变数量数据帧的列表,要进行上下文化,假设我们有“ n”个传感器,并且所有数据都包含在包含“ n”个数据帧的列表中,其中每个数据帧包含10个变量提供这些传感器。


首先,我拥有的数据位于具有以下结构的数据框中:

head(rawData, 3)

  EmailUsuario                                    Fecha Hcho Humidity  Latitude Longitude NombreUsuario Pm25 SensorName Temperature
1         null Fri Feb 01 2019 10:40:51 GMT-0300 (CLST) null     null -34.42584 -72.03271          null   40        C08        null
2         null Fri Feb 01 2019 10:40:56 GMT-0300 (CLST) null     null -34.42584 -72.03271          null   35        C08        null
3         null Fri Feb 01 2019 10:41:01 GMT-0300 (CLST) null     null -34.42642 -72.03216          null   35        C08        null

在此数据框中找到了所有传感器,在SensorName列中仅观察到一个传感器“ C08”,但该列中的传感器数目可变。

接下来我要做的是创建一个列表,其中包含所有数据帧,但由传感器分隔。

n <- levels(rawData$SensorName) # sensor names vectors
s <- split(x = rawData, f = rawData$SensorName) # List of DFs per sensor

如果我查看“ s”列表中的第二个元素,则会得到以下数据框:

head(s[[2]], 3)


    EmailUsuario                                   Fecha Hcho Humidity Latitude Longitude NombreUsuario Pm25 SensorName Temperature
560         null Wed Feb 06 2019 14:49:17 GMT+0000 (GMT) null     null -70.6667    -33.45          null   12        C17        null
561         null Wed Feb 06 2019 14:49:22 GMT+0000 (GMT) null     null -70.6667    -33.45          null   12        C17        null
562         null Wed Feb 06 2019 14:49:27 GMT+0000 (GMT) null     null -70.6667    -33.45          null    9        C17        null

您可以看到它对应于传感器“ C17”。


现在,我想要的是例如创建一个新的数据框,但仅使用“ s”列表中包含的所有数据框的一些变量(列)。在这种情况下,我想创建一个数据框,其中列的名称等于传感器的名称,并且列的值等于该传感器的列``Pm25''的值。这样我就可以处理这些数据。

这种方法好吗?您推荐什么解决方案?您推荐其他解决方案吗?

谢谢

0 个答案:

没有答案