gpt4 book ai didi

r - 多个数据框中的多个相同列 - R

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

我有四个 data frames有一个名为“类型”的类似列。

df1 <- data.frame(Type = c('A','B','C','D','E','F'))
df2 <- data.frame(Type = c('A','B','C','D','E','F'))
df3 <- data.frame(Type = c('A','B','C','D','E','F'))
df4 <- data.frame(Type = c('A','Z','C','D','E','F'))
我想检查此列是否在所有 data frames 中都相同.
目前我正在使用以下方法一次检查两个数据帧:
as.integer(as.logical(identical(df1$Type, df2$Type)))
如果相同,则为 1,否则为 0。
我想执行这样的一行:
as.integer(as.logical(identical(df1$Type, df2$Type, df3$Type, df4$Type)))
但是 identical一次只能处理 2 列。
我也发现了这个 Testing for multiple identical columns in R ,但这仅适用于 data frame 中的列.

最佳答案

您可以使用提取 Type数据框中的列并将任何一个元素与所有元素进行比较。

list_df <- mget(paste0('df', 1:4))
#Or manually creating a list
#list_df <- list(df1, df2, df3, df4)

tmp <- lapply(list_df, `[[`, 'Type')
all(sapply(tmp, function(x) all(x == tmp[[1]])))
#[1] FALSE

关于r - 多个数据框中的多个相同列 - R,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65305705/

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