我有以下类型的对象testTable:
[1]“ tbl_Microsoft SQL Server”“ tbl_dbi”“ tbl_sql”“ tbl_lazy”“ tbl”
当我想基于一个列来删除表,而保留所有其他列时,我使用testTable %>% distinct(oneColumn, .keep_all = TRUE)
。但是我总是会收到下面的错误。我检查了互联网,找不到其他人遇到相同的错误。我如何实现我的目标?谢谢。
错误:如果.keep_all为FALSE,则只能找到指定列的不同值
如果我删除.keep_all = TRUE
,则查询有效,但仅返回oneColumn。
答案 0 :(得分:0)
说您的数据如下:
tribble(~OneColumn, ~AnotherColumn,
"A", 1,
"A", 2,
"A", 3,
"B", 4,
"B", 5,
"C", 6,
"C", 7)
OneColumn
中的唯一值是A,B和C,因此结果将具有这些值的三行。但是,例如对于结果为OneColumn值为A的行,您的代码没有指定要使用的AnotherColumn值-它可以为1、2或3。
相反,您需要按OneColumn分组并汇总(汇总)所有其他列。例如,要为所有其他列的OneColumn的每个值使用最小值,可以使用testTable %>% group_by(OneColumn) %>% summarize_all(min)
。