【发布时间】:2021-07-02 08:59:24
【问题描述】:
我有这样的具有不同行号的数据集。但这项任务对我来说似乎很复杂。我最终得到了空列。
ID <- c("0001", "0002", "0003", "0004", "0008", "0009")
class <- c("0010", "0011", "0100", "0101", "0110", "0111")
user <- c(letters[1:6])
name <- c("A", "B", "C", "D", "E", "F")
df1 <- data.frame(ID, class, name, user)
ID <- c("0001", "0002", "0002", "0003", "0004", "0008", "0010")
class <- c("0010", "0011", "0011", "0100", "0101", "0110", "0112")
name <- c("A", "B", "B", "C", "D", "E", "G")
user <- c(letters[1:7])
df2 <- data.frame(ID, class, name, user)
ID <- c("0001", "0002", "0003", "0004", "0009")
class <- c("0010", "0011", "0100", "0101", "0111")
name <- c("A", "unknown", "C", "unknown", "F")
user <- c(letters[1:5])
df3 <- data.frame(ID, class, name, user)
ID <- c("0001", "0002", "0003", "0004", "0008", "0010")
class <- c("1010", "0011", "0100", "0101", "0110", "0112")
name <- c("A", "b", "C", "unknown", "E", "G")
user <- c(letters[1:6])
df4 <- data.frame(ID, class, name, user)
由reprex package (v2.0.0) 于 2021-07-02 创建
我想要这样的输出:
ID <- c("0001", "0001", "0002", "0003", "0004", "0008", "0009", "0010")
class <- c("0010", "1010", "0011", "0100", "0101", "0110", "0111", "0112")
name <- c("A", "A", "B", "C", "D", "E", "F", "G")
count_of_ID_class_combination_use <- c(3, 1, 4, 4, 4, 3, 2, 2)
total_df_analyzed <- c(4, 4, 4, 4, 4, 4, 4, 4)
List_of_df_that_use_this <- c("df1_df2_df3", "df4", "df1_df2_df3_df4", "df1_df2_df3_df4", "df1_df2_df3_df4", "df1_df2_df3_df4", "df1_df3", "df2_df4")
Other_names_used <- c("", "", "unknown_b", "", "unknown", "", "", "")
main <- data.frame(ID, class, name, count_of_ID_class_combination_use, total_df_analyzed, List_of_df_that_use_this, Other_names_used)
由reprex package (v2.0.0) 于 2021-07-02 创建
我想将df1 与其他dfs 进行比较。首先,我想检查是否多次使用 ID 和 class 组合。我会忽略它们(例如df2 中的0002 和0011 组合)。然后考虑ID、class 和name,我想知道特定ID 和class 组合使用了多少次,分析的数据帧总数,使用该组合的数据帧列表, 和其他名称(如果同一 ID 和 class 组合有多个名称)。
提前感谢您的帮助。
【问题讨论】: