Matlab用兩句話搞定資料中的重複行

2021-10-08 03:06:33 字數 835 閱讀 5087

在資料處理中,有時候資料裡混入了重複的行,給資料分析帶來了不必要的麻煩,要刪除並不難,如何以最簡單的方式處理則需要花一點時間
直接上**,最後面兩句是用於查詢重複資料的行號

隨機生成a資料,在9,18,19位置加入重複的行

[b,ia,ib] = unique(a,『rows』);; 去掉了a中重複的行,再經過排序得到了b

b ==a(ia,:)

a ==b(ib,:)

ia(i)代表了b的第i等於a中的第ia(i)行

ib(i)a的第i行對應於b的第ib(i)行

b中沒有重複的列,並且b中的每一行跟a中的某一行是一一對應的

可以看出,a中重複的行的行號是不會出現在ia當中的

因此,只需要將所有行號與ia做乙個補集就能得到哪些是重複的行

如果想知道具體哪些行之間是重複的,只需要在查到重複的行號後,再查一下ib即可。因為重複的資料在ib中對應的數字是相等的

例如,重複行號為i,find(ib==ib(i))

兩句話中的不常見單詞

給定兩個句子 a 和 b 句子是一串由空格分隔的單詞。每個單詞僅由小寫字母組成。如果乙個單詞在其中乙個句子中只出現一次,在另乙個句子中卻沒有出現,那麼這個單詞就是不常見的。返回所有不常用單詞的列表。您可以按任何順序返回列表。示例 1 0 a.length 200 0 b.length 200 a 和...

兩句話中的不常見單詞

給定兩個句子a和b。句子是一串由空格分隔的單詞。每個單詞僅由小寫字母組成。如果乙個單詞在其中乙個句子中只出現一次,在另乙個句子中卻沒有出現,那麼這個單詞就是不常見的。返回所有不常用單詞的列表。您可以按任何順序返回列表。樣例 1 輸出 sweet sour 樣例 2 輸出 banana 0 a.len...

884 兩句話中的不常見單詞

leetcode weekly contest 97的第一道題目,分值為3分。原題目要求如下 給定兩個句子 a 和 b 句子是一串由空格分隔的單詞。每個單詞僅由小寫字母組成。如果乙個單詞在其中乙個句子中只出現一次,在另乙個句子中卻沒有出現,那麼這個單詞就是不常見的。返回所有不常用單詞的列表。您可以按...