Cara menemukan nilai unik di beberapa kolom di pandas


Seringkali Anda mungkin ingin menemukan semua nilai unik di beberapa kolom dalam pandas DataFrame. Untungnya, hal ini mudah dilakukan dengan menggunakan fungsi pandas Unique() yang dikombinasikan dengan fungsi ravel() :

  • unik() : mengembalikan nilai unik dalam urutan tampilan.
  • ravel(): mengembalikan serangkaian data yang diratakan.

Misalnya, kita memiliki DataFrame panda berikut:

 import pandas as pd

#createDataFrame
df = pd.DataFrame({'col1': ['a', 'b', 'c', 'd', 'e'],
                   'col2': ['a', 'c', 'e', 'f', 'g'],
                   'col3': [11, 8, 10, 6, 6]})

#view DataFrame 
print(df)

  col1 col2 col3
0 aa 11
1 bc 8
2 this 10
3 df 6
4 eg 6

Mengembalikan array nilai unik

Kode berikut menunjukkan cara mencari nilai unik di col1 dan col2 :

 p.d. unique (df[[' col1 ', ' col2 ']]. values . ravel ())

array(['a', 'b', 'c', 'e', 'd', 'f', 'g'], dtype=object)

Dari hasilnya terlihat ada 7 nilai unik pada dua kolom tersebut: a, b, c, d, e, f, g .

Kembalikan DataFrame dengan nilai unik

Jika Anda ingin mengembalikan nilai-nilai ini sebagai DataFrame dan bukan array, Anda dapat menggunakan kode berikut:

 unique = pd. unique (df[[' col1 ', ' col2 ']]. values . ravel ())

p.d. DataFrame (unique)

	0
0 a
1b
2 tbsp
3rd
4 d
5f
6g

Mengembalikan jumlah nilai unik

Jika Anda hanya ingin mengetahui jumlah nilai unik di beberapa kolom, Anda dapat menggunakan kode berikut:

 unique = pd. unique (df[[' col1 ', ' col2 ']]. values . ravel ())

len (unique)
7

Ini memberitahu kita bahwa ada 7 nilai unik di dua kolom ini.

Sumber daya tambahan

Cara menggabungkan Pandas DataFrames di beberapa kolom
Cara memfilter Pandas DataFrame pada berbagai kondisi

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *