繁体   English   中英

根据R中的行号复制观察结果

[英]Copy observations based on the row number in R

我的数据框(x)是:

c1 c2 

Aa 02 

Bb 03 

Cc 02 

我想创建一个列c3,根据c2中的行号复制c1中的观察:

c1 c2 c3 

Aa 02 Bb 

Bb 03 Cc

Cc 02 Bb

我正在使用base R,我无法下载软件包。

谢谢!

使用此数据:

x = read.table(text = 'c1 c2 
Aa 02 
Bb 03 
Cc 02 ', header = T)

这是一个解决方案:

x$c3 = x$c1[as.numeric(as.character(x$c2))]
#   c1 c2 c3
# 1 Aa  2 Bb
# 2 Bb  3 Cc
# 3 Cc  2 Bb

as.numeric(as.character())是一种将某些东西转换为数字的非常安全的方法 - 无论源是factor还是character (或已经是numeric ),它都将起作用。 虽然如果你看一下class(x$c2)你可以更明智地了解需要什么样的转换。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM