R 从带有计数的向量生成文本

R 从带有计数的向量生成文本,r,string,vector,text-mining,R,String,Vector,Text Mining,这是我的情况,假设我有以下数据: freq hello 1 bye 2 我想从这些数据中创建一个结构如下的字符串: "hello bye bye" 我可以使用for循环和不雅的方法来实现。然而,我的数据最多可以有10000行,并且不是我想要处理的唯一向量。有没有一种有效的方法可以做到这一点?这一行应该适用于表格、矩阵和数据帧 paste(rep(rownames(data), data[,1]), collapse = " ") 如果您有其他列,并且freq

这是我的情况,假设我有以下数据:

        freq
hello    1
bye      2
我想从这些数据中创建一个结构如下的字符串:

"hello bye bye"

我可以使用for循环和不雅的方法来实现。然而,我的数据最多可以有10000行,并且不是我想要处理的唯一向量。有没有一种有效的方法可以做到这一点?

这一行应该适用于表格、矩阵和数据帧

paste(rep(rownames(data), data[,1]), collapse = " ")

如果您有其他列,并且
freq
可能不是第一列,则可以使用
data[,“freq”]
(或
data$freq
data[[“freq”]]]
用于数据帧和dplyr“tbl”对象)来代替
数据[,1]
,使其更加明确。

这一行适用于表、矩阵和数据帧

paste(rep(rownames(data), data[,1]), collapse = " ")

如果您有其他列,并且
freq
可能不是第一列,则可以使用
data[,“freq”]
(或
data$freq
data[[“freq”]]]
用于数据帧和dplyr“tbl”对象)来代替
数据[,1]
,使其更加明确。

这一行适用于表、矩阵和数据帧

paste(rep(rownames(data), data[,1]), collapse = " ")

如果您有其他列,并且
freq
可能不是第一列,则可以使用
data[,“freq”]
(或
data$freq
data[[“freq”]]]
用于数据帧和dplyr“tbl”对象)来代替
数据[,1]
,使其更加明确。

这一行适用于表、矩阵和数据帧

paste(rep(rownames(data), data[,1]), collapse = " ")

如果您有其他列,并且
freq
可能不是第一列,您可以使用
data[,“freq”]
(或
data$freq
data[“freq”]]
用于数据帧和dplyr“tbl”对象)来代替
数据[,1]
,使其更加明确。

+1但我建议始终通过
[[index]]选择列
$name
,并且永远不要通过
[,index]
。这样,当DF的类发生变化时,语义就不会发生变化(例如,
dplyr
tbl_DF
明智地重新定义
[/code>以设置
drop=FALSE
)。@KonradRudolph——这是一个很好的观点。我试图涵盖所有情况,因为
$
[
不能在类“矩阵”和“表”上使用。我添加了
数据[[“freq”]]
和对dplyr tbls+1的引用,但我建议始终通过
[[index]]
$name
选择列,而不要通过
[,index]
。这样,当DF的类发生变化时,语义不会发生变化(例如,
dplyr
tbl_df
明智地重新定义了
[
以设置
drop=FALSE
)。@KonradRudolph-很好。我试图涵盖所有情况,因为
$
[
不能用于类“矩阵”和“表”。我添加了
数据[[“频率”]
和对dplyr tbls+1的引用,但我建议始终通过
[[index]]
$name
选择列,而不要通过
[,index]
。这样,当DF的类发生变化时语义不会改变(例如,
dplyr
tbl\u DF
明智地重新定义
[
设置
drop=FALSE
)。@KonradRudolph-这一点很好。我试图涵盖所有情况,因为
$
[
不能用于类“矩阵”和“表”。我添加了
数据[[“频率”]
和对dplyr tbls+1的引用,但我建议始终通过
[[index]选择列
$name
,并且永远不要通过
[,index]
。这样,当DF的类改变时,语义不会改变(例如,
dplyr
tbl_DF
明智地重新定义
[
以设置
drop=FALSE
)@KonradRudolph-很好。我试图涵盖所有情况,因为
$
[
不能用于类“矩阵”和“表”。我添加了
数据[[[“频率”]]
和对dplyr tbls的引用