-1

我使用 ffbase 包将一个大数据集(约 600 万行)导入到 R 中,该包列出了在巴西就读高中的人。原则上,我有 2 列:Id(学生 ID 号)和 University(机构名称)。

我想创建一个列 - 在我的示例中名为 Group - 将每所大学与其教育组相关联:

Id           University       Group
000001       Anhanguera       Kroton
000002       Unopar           Kroton
000003       Anhembi          Laureate
000004       FMU              Laureate

PS:我的数据集中没有关于教育群体的信息,但是,我有我需要的关于哪个群体对应于每所大学的信息。这样,我需要将此详细信息附加到我的数据中。

PS2:大学列的类是ff_vector。

我感谢您可能做出的任何贡献。

4

1 回答 1

0

如果您有很长的组列表,这可能不是最快的方法,但是,使用mutatedplyr

data <- data.frame("Id" = 000001:000004, "University" = c("Anhanguera", "Unopar", "Anhembi", "FMU"))

data <-  mutate(data, Group = as.factor(
    ifelse(University %in% "Anhanguera", "Kronton", 
        ifelse(University %in% "Unopar", "Kronton",
            ifelse(University %in% "Anhembi", "Laureate",
                ifelse(University %in% "FMU", "Laureate", NA))))))        
data
str(data)

我在这里使用了大学,但只需将其替换为ff_vector.

如果您想保留 Group 作为角色,请删除as.factor().

我不熟悉ffbase,但请参阅ffbase2以了解使用dplyrffbase.

于 2019-05-02T23:47:15.497 回答