【发布时间】:2020-12-29 20:47:13
【问题描述】:
我有一个如下所示的数据:
此数据显示了世界上许多公司在哪里设有办事处。公司名称以字母和四位数字开头。
我想做的是创建两个变量来显示 (1) 每个国家在给定年份的公司总数和 (2) 每个国家和年份的公司总数,但仅与“国家第一个地址”。
现在,一个问题是数据非常大,并且以 15 个单独的 .csv 文件形式提供。数据适用于以下年份:2003 年、2007 年、2011 年、2015 年和 2019 年。每年三个 csv 文件。例如,对于 2003,我们有:data2003_part1.csv; data2003_part2 和 data2003_part3。
要创建上面的变量,我想我可以使用这样的东西:
library(tidyverse)
data_2003_part1 %>% group_by(Country of 1st ADDRESS) %>%
summarise(B0100=sum(B0100,na.rm = T))
我不知道该怎么做是 1) 在所有公司的代码中指出,而不仅仅是像我在这里所做的那样 2) 代码可以在所有 15 个 csv 文件上运行。我想我需要先合并它们并添加年份变量?还是有其他方法?
【问题讨论】:
-
请不要发布代码/数据/错误的图像:它不能被复制或搜索 (SEO),它会破坏屏幕阅读器,并且它可能不适合某些移动设备。参考:meta.stackoverflow.com/a/285557(和xkcd.com/2116)。请直接包含代码、控制台输出或数据(例如,
data.frame(...)或来自dput(head(x))的输出)。 -
除非文件很大,否则我会首先为每个文件创建一个数据帧,然后将它们合并到一个数据帧中(使用
rbind或merge或其他)。将所有内容放在一个数据框中往往会节省分析时间。不过,有不止一种方法可以做到这一点。