series
içinde bir değer benzersiz bir değer olup olmadığını sınamak için çalışıyorum. Biliyorum series.unique
, series
'da benzersiz değerler dizisi verebilir, ancak durumuma nasıl uyduğundan emin değilim. Veya series
ile yineleyin, ama çok verimli değil, bu yüzden bunu yapmak için daha iyi bir yol olduğunu merak ediyorum?Bir dizide bir değer nasıl kontrol edilir benzersiz
2
A
cevap
7
Sen parametresi keep=False
ile duplicated
kullanmak ve daha sonra ~
tarafından Series
boolean evirebilirsiniz:
print df
col
0 a
1 b
2 a
3 b
4 c
print df.col.duplicated(keep=False)
0 True
1 True
2 True
3 True
4 False
Name: col, dtype: bool
print ~df.col.duplicated(keep=False)
0 False
1 False
2 False
3 False
4 True
Name: col, dtype: bool
1
Sen boolean indeksleme ve birleştirmek olabilir yerleşik len()
verilen bir değerin örneklerini tam miktarını almak için. Böyle
varsayarsak sizin DataFrame
görünüyor: Böyle değeri 3
veya 1
örnekleri miktarını alabilirsiniz
In [155]: test_1 = pd.DataFrame(np.array([1,2,3,3,4]), columns=['A'])
In [156]: test_1
Out[156]:
A
0 1
1 2
2 3
3 3
4 4
:
In [158]: len(test_1[test_1.A == 3])
Out[158]: 2 ## two instances make for non-unique value
In [159]: len(test_1[test_1.A == 1])
Out[159]: 1 ## Unique value!!
istediğiniz tam değerini tanımlayabilir Bu şekilde Bu değerin örneklerini test etmek ve almak için.