【发布时间】:2020-11-09 11:38:09
【问题描述】:
我有一个或多或少的具体问题,可能与 R 中的循环有关。我有一个数据框:
X location year
1 North Dakota, Minnesota, Michigan 2011
2 California, Tennessee 2012
3 Bastrop County (Texas) 2013
4 Dallas (Texas) 2014
5 Shasta (California) 2015
6 California, Oregon, Washington 2011
我对这些数据有两个问题:1) 我需要一个仅包含每行的状态名称的列。我想这应该很容易使用 gsub 并使用所有美国州名的列表。
list <- c("Alabama", "Alaska", "Arizona", "Arkansas", "California", "etc")
pat <- paste0("\\b(", paste0(list, collapse="|"), ")\\b")
pat
data$state <- gsub(data$location, "", paragraph)
对我来说更大的问题是 2)我需要为数据集中的每个状态单独(重复)行。因此,如果第 6 行有 2011 年的加利福尼亚州、俄勒冈州和华盛顿州,我需要像这样分别为每一个单独设置一行:
X location year
1 California 2011
2 Oregon 2011
3 Washington 2011
感谢您的帮助!
【问题讨论】: