如何轻松组合数据; 如何量化文本数据
我刚刚开始使用R和R-Studio。 我正在处理几个不同的数据集:每个数据集都包含相同的变量,并且在这些变量中包含相同类型的信息。
数据集已作为单独的集/文件导入到R-Studio中。 第一个问题:我怎么能把它们合并起来? 共有十七个。 以下是其中两个的缩写示例:
EVENT_ID STATE YEAR MONTH_NAME EVENT_TYPE INJURIES_DIRECT DEATHS_DIRECT
1 5551758 MASSACHUSETTS 1996 January Heavy Snow 0 0
2 5551581 MASSACHUSETTS 1996 January Heavy Snow 0 0
3 5551757 MASSACHUSETTS 1996 January Heavy Snow 0 0
4 5551573 MASSACHUSETTS 1996 January Heavy Snow 0 0
5 5551572 MASSACHUSETTS 1996 January Heavy Snow 0 0
EVENT_ID STATE YEAR MONTH_NAME EVENT_TYPE INJURIES_DIRECT DEATHS_DIRECT
1 5591809 MASSACHUSETTS 1997 January Winter Weather 0 0
2 5591810 MASSACHUSETTS 1997 January Winter Weather 0 0
3 5591817 MASSACHUSETTS 1997 January Heavy Snow 0 0
4 5591820 MASSACHUSETTS 1997 January Heavy Snow 0 0
5 5591819 MASSACHUSETTS 1997 January Heavy Snow 0 0
6 5591811 MASSACHUSETTS 1997 January Heavy Snow 0 0
7 5591813 MASSACHUSETTS 1997 January Heavy Snow 0 0
正如你所看到的,每个头都有相同的标题。 一旦我组合了这些数据集 - 不要在数据中间包含标题! - 我将开始分析。 第二个问题:我如何去量化因素,比如EVENT_TYPE变量中的因素? 我试图将它们转换为“as.numeric”,我相信这是按字母顺序排列的。 这很好,但我会如何跟踪这些数据? 我希望像玩数字数据一样和他们一起玩,但不知道在哪里或如何开始这样做。
如果有另一个地方解释,请让我知道,我很乐意阅读这些例子。 我不确定如何最好地问。
创建一个列表并使用do.call在它们上运行rbind:
do.call( rbind, list(df1,df2,df3, ....,dfN) )
对于实际的统一:见BondedDust的答案(对于更加广阔的东西来达到基本相同的目的,请看这里。)
在排序和排列EVENT_TYPE定量元素方面; 你有没有看过?as.factor()呢? 如果你能解释你想要处理的数据,我们可能会提供更实质性的答案:)。
help(rbind)
会让你开始。
您想要读取数据中的数据,可能使用read.csv
或read.table
,然后将数据帧与rbind
。 有关解释和示例,请参阅help(data.frame)
和help(rbind)
。 在http://www.endmemo.com/program/R/rbind.php也有一个非常简短的例子
不要将字符串转换为因素,直到将它们合并为止。 您可以通过在加载数据时指定strings.as.factors = False
来执行此操作。
但是,将数据帧合并后,可以使用d[,colnum] = as.factor(d[,colnum])
将列转换为因子。 这将为该列中出现的每个短语创建整数级别。 如果您想实际使用这些因子(因此,大雪比雪等数量更多),您可能需要指定要使用的因子的顺序。 您还需要检查缺失值,并注意因素(如大写/小写或多余空格)的变化。
上一篇: How to easily combine data sets; how to quantify text data