第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

R中考慮兩列的唯一行,無(wú)順序

R中考慮兩列的唯一行,無(wú)順序

HUH函數(shù) 2019-10-21 14:56:08
與我發(fā)現(xiàn)的問題不同,我想不按順序獲取兩列的唯一性。我有一個(gè)df:df<-cbind(c("a","b","c","b"),c("b","d","e","a"))> df     [,1] [,2] [1,] "a"  "b"  [2,] "b"  "d"  [3,] "c"  "e"  [4,] "b"  "a" 在這種情況下,從ba與ba相同的意義上說,行1和行4是“重復(fù)項(xiàng)”。我知道如何找到列1和2的唯一性,但是在這種方法下,我會(huì)發(fā)現(xiàn)每一行都是唯一的。
查看完整描述

3 回答

?
www說

TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超8個(gè)贊

有很多方法可以做到這一點(diǎn),這是一種:


unique(t(apply(df, 1, sort)))

duplicated(t(apply(df, 1, sort)))

一個(gè)給出唯一的行,另一個(gè)給出掩碼。


查看完整回答
1 反對(duì) 回復(fù) 2019-10-21
?
慕的地8271018

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超4個(gè)贊

如果只有兩列,則還可以使用pmin和pmax,如下所示:


library(data.table)

unique(as.data.table(df)[, c("V1", "V2") := list(pmin(V1, V2),

                         pmax(V1, V2))], by = c("V1", "V2"))

#    V1 V2

# 1:  a  b

# 2:  b  d

# 3:  c  e

使用“ dplyr”的類似方法可能是:


library(dplyr)

data.frame(df, stringsAsFactors = FALSE) %>% 

  mutate(key = paste0(pmin(X1, X2), pmax(X1, X2), sep = "")) %>% 

  distinct(key)

#   X1 X2 key

# 1  a  b  ab

# 2  b  d  bd

# 3  c  e  ce


查看完整回答
反對(duì) 回復(fù) 2019-10-21
?
湖上湖

TA貢獻(xiàn)2003條經(jīng)驗(yàn) 獲得超2個(gè)贊

如果所有元素都是字符串(哎呀,即使不是,也可以強(qiáng)迫它們),那么一個(gè)技巧就是將其創(chuàng)建為data.frame并在其中使用一些dplyr技巧。


library(dplyr)

df <- data.frame(v1 = c("a","b","c","b"), v2 = c("b","d","e","a"))

df$key <- apply(df, 1, function(s) paste0(sort(s), collapse=''))

head(df)

##   v1 v2 key

## 1  a  b  ab

## 2  b  d  bd

## 3  c  e  ce

## 4  b  a  ab

該$key列現(xiàn)在應(yīng)該告訴您重復(fù)。


df %>% group_by(key) %>% do(head(., n = 1))

## Source: local data frame [3 x 3]

## Groups: key

##   v1 v2 key

## 1  a  b  ab

## 2  b  d  bd

## 3  c  e  ce


查看完整回答
反對(duì) 回復(fù) 2019-10-21
  • 3 回答
  • 0 關(guān)注
  • 788 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)