【问题标题】:Removing duplicated values with missing values in a dataframe删除数据框中缺失值的重复值
【发布时间】:2016-12-19 05:15:53
【问题描述】:

我有一个数据框,其中包含缺少值的重复行。我想删除重复的行,同时保留某一列的数据(例如下面示例中的年龄)。由于一列的值在模型中的权重比其他值大,我想保留该列的数据。我尝试了Removing duplicate Values in Dataframe in R 提出的方法,但我的数据框很大,缺失值分布在一列以上。任何建议将不胜感激。

**Name, age, city, edu, phone**
ali, 23, bali, matric, NA
brad, 24, sofia, inter, NA
ali, NA, bali, matric, 786
brad, NA, sofia, inter, 555
ali, 9999999, bali, matric, 444

预期的输出应如下所示:

**Name, age, city, edu, phone**
ali, 23, bali, matric, NA
brad, 24, sofia, inter, NA

问候,

DF with duplicated Missing values

【问题讨论】:

  • dput您的数据。预期的输出是什么?
  • 请在您的问题中添加一些预期的输出。另外,你能展示一些你用来解决这个问题的代码吗?
  • 只需 order 并删除 duplicated 条目
  • 如果它们不一样,它们就不是重复的。
  • 是什么让ali, 23,...ali, 99999,... 更受欢迎?是否与值或行顺序或其他什么有关?

标签: r dataframe data-science


【解决方案1】:

使用dplyrmagrittr。但是,您需要为年龄参数设置一个阈值,这可能无法保证一组唯一的行 age 除外。

THRESHOLD <- 100
df %<>% na.omit() %>% filter(age<THRESHOLD)

或使用base如下

THRESHOLD <- 100
df <- df[complete.cases(df),]
df <- df[df$age < THRESHOLD,]

【讨论】:

    猜你喜欢
    • 2021-06-25
    • 1970-01-01
    • 2013-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-26
    • 2021-12-06
    • 2013-08-16
    相关资源
    最近更新 更多