在R语言中合并ran_user与ran_nonuser两个数值样本的方法
正确合并数值型样本的方法
paste()是字符串拼接函数,会自动把数值转成字符,这显然不符合你的需求。根据不同的合并场景,给你两种直接的解决方案:
场景1:合并成一个更长的数值向量
如果ran_user和ran_nonuser都是数值型向量,直接用c()函数拼接,结果会保持数值类型:
# 示例数值向量 ran_user <- c(2.1, 4.3, 6.5) ran_nonuser <- c(8.7, 1.9, 3.2) # 合并为数值向量 combined_num_vector <- c(ran_user, ran_nonuser)
验证类型:执行typeof(combined_num_vector)会返回"double",说明结果是数值型。
场景2:合并为数据框的两列(保留各自数值属性)
如果需要把两个样本作为独立列放在同一个数据结构里,用data.frame()(base R)或tibble()(tidyverse工具):
# base R 实现 combined_df <- data.frame(ran_user = ran_user, ran_nonuser = ran_nonuser) # tidyverse 实现(需先安装加载tidyverse) # install.packages("tidyverse") # library(tidyverse) combined_tibble <- tibble(ran_user = ran_user, ran_nonuser = ran_nonuser)
查看列类型:执行str(combined_df)会显示两列均为num(数值型)。
额外提示
如果你的原始样本是字符型,需要先转成数值型再合并:
ran_user <- as.numeric(ran_user) ran_nonuser <- as.numeric(ran_nonuser)
如果是结构相同的数据框要按行合并,用rbind():
combined_rows <- rbind(ran_user_df, ran_nonuser_df)
内容的提问来源于stack exchange,提问作者ano273
相关产品推荐
相关产品推荐

