在R

时间:2017-06-16 06:08:55

标签: r concatenation

我想在R中一个接一个地连接两个向量。我已经编写了以下代码来执行此操作:

> a = head(tracks_listened_train)
> b = head(tracks_listened_test)
> a
[1] cc1a46ee0446538ecf6b65db01c30cd8 19acf9a5cbed34743ce0ee42ef3cae3e
[3] 9e7fdbf2045c9f814f6c0bed5da9bed7 3441b1031267fbb6009221bf47f9c5e8
[5] 206c8b79bd02beeea200879afc414879 1a7a95e3845a6815060628e847d14362
18585 Levels: 0001a423baf29add84af6ec58aeb5b90 ...
> b
[1] 7251a7694b79aa9a39f9a1a5f5c8a253 2f362377ef0e7bca112233fdda22a79c
[3] c1196625b1b733b62c43935334e1d190 58e41e462af4185b08231a41453c3faf
[5] 1cc2517fa9c037e02a14ce0950a28f67
10186 Levels: 0001a423baf29add84af6ec58aeb5b90 ...
> res = c(a,b)
> res
[1] 14898  1898 11556  3859  2408  1950  4473  1865  7674  3488  1130

但是,我得到了结果向量的意外结果。问题是什么?

1 个答案:

答案 0 :(得分:7)

我们需要将factor类转换为character

c(as.character(a), as.character(b))

我们获取数字而不是character的原因是基于factor的存储模式,即整数。因此,当我们进行连接时,它会强制执行integer模式