gpt4 book ai didi

r - 用新值填充数据框行

转载 作者:行者123 更新时间:2023-12-04 20:39:08 25 4
gpt4 key购买 nike

我想用预先存在的数据(根据一列的名称)拟合一个空数据框。假设我的空数据是:

        #define empty data.frame
predictor.names <- c("LO3","Tx","Gh","RH","SR","ST","TC","U10","WF","SF","F","VW","VS","V","D","day")
dat <- data.frame("pred"=predictor.names,"MAM"=0)
rownames(dat) <- predictor.names

现在,我想用以下值填充行:
          x  Freq
SR 392
RH 350
day 253
Tx 90
LO3 28
ST 7
TC 5
WF 5
VS 2
SF 1

然后,我试过:
       dat[which(dat$pred%in%temp[[1]]),2] <- temp[[2]]

但它不起作用,因为变量的顺序不同..
它将 392 添加到第一个 LO3,依此类推。
所以我想用循环来做到这一点..但必须有另一种更简单的方法..
任何想法/建议?

提前致谢!

最佳答案

你可以试试 match获取数字索引并将其用于分配值。

 indx <- match(temp$x, dat$pred)
dat$MAM[indx] <- temp$Freq

数据
 temp <- structure(list(x = c("SR", "RH", "day", "Tx", "LO3", "ST", 
"TC",
"WF", "VS", "SF"), Freq = c(392L, 350L, 253L, 90L, 28L, 7L, 5L,
5L, 2L, 1L)), .Names = c("x", "Freq"), class = "data.frame",
row.names = c(NA, -10L))

关于r - 用新值填充数据框行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29775337/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com