【问题标题】:Compare values in rows and identify duplicates比较行中的值并识别重复项
【发布时间】:2021-04-23 12:30:26
【问题描述】:

我觉得这是一个非常简单的问题。我有一个看起来像这样的数据框:

ID   Genre1         Genre2
1    Comedy         Comedy
2    Drama          Drama
3    Sport          Sport
4    Drama          Comedy
5    Documentary    Documentary
6    Entertainment  Entertainment
7    Film           Film
8    Drama          Crime Drama
9    Crime Drama    Drama

我想确定哪些行具有相同的值(例如“comedy”和“comedy”)并创建一个名为 match 的新列,将它们标记为“是”(或“否”,对于那些没有的) t 匹配)。

根据上面的示例,预期输出应如下所示:

ID   Genre1         Genre2          Match
1    Comedy         Comedy          Yes
2    Drama          Drama           Yes
3    Sport          Sport           Yes
4    Drama          Comedy          No
5    Documentary    Documentary     Yes
6    Entertainment  Entertainment   Yes
7    Film           Film            Yes
8    Drama          Crime Drama     No
9    Crime Drama    Drama           No

任何想法我可以如何去做和/或什么包最好?提前致谢!

【问题讨论】:

    标签: r duplicates match string-matching


    【解决方案1】:

    使用ifelse:

    df$Match <- ifelse(df$Genre1 == df$Genre2, 'Yes', 'No')
    

    【讨论】:

    • 感谢您的快速回复!只是为了检查一下,我还有一些其他的数据集,我需要在其中运行它,这些数据集不仅仅是两列。有些有四个。这个解决方案可以适应这些吗?
    • 就像说所有四列是否相同?从技术上讲,您可以通过使用df$Genre 1 == df$Genre2 &amp; df$Genre2 == df$Genre3 &amp; df$Genre3 == df$Genre4 之类的东西来改变条件来做到这一点,但这非常难看。你也许可以试试这个答案:stackoverflow.com/questions/54907539/…
    • 很好,很高兴它有帮助!
    猜你喜欢
    • 1970-01-01
    • 2020-07-05
    • 2010-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-09
    • 2022-01-13
    相关资源
    最近更新 更多