π΅Pandas 2. DataFrame(2) - νμ μ κ·ΌνκΈ°
π΅ μ΄λ² ν¬μ€ν
κ³Ό λ€μ ν¬μ€ν
μ ν΅ν΄ λ°μ΄ν°νλ μμ ν/μ΄μ μ κ·Όνλ λ°©λ²μ λν΄ μμλ΄
μλ€.
π΅ μμ μ μ df λΌλ λ°μ΄ν°νλ μμ νλ λ§λ€μ΄λκ²μ!!
import pandas as pd
df = pd.DataFrame({"κ΅μ΄" : [85, 92, 88, 80],
"μν" : [100, 92, 84, 90],
"μμ΄" : [90, 90, 90, 82]},
index = ["A","B","C","D"])
df
>>
κ΅μ΄ μν μμ΄
A 85 100 90
B 92 92 90
C 88 84 90
D 80 90 82
1. DataFrame νμ μ κ·Ό
1.1. loc / iloc ν¨μ
π΅ df.loc[index_name]
: μΈλ±μ€μ μ΄λ¦μ λ°μμ νμ μ κ·Όνλ ν¨μμ
λλ€.
df.loc["A"]
>>
κ΅μ΄ 85
μν 100
μμ΄ 90
Name: A, dtype: int64
π΅ df.iloc[μΈλ±μ€μμ]
: μΈλ±μ€μ μμλ₯Ό λ°μμ νμ μ κ·Όνλ ν¨μμ
λλ€.
df.iloc[1]
>>
κ΅μ΄ 92
μν 92
μμ΄ 90
Name: B, dtype: int64
νμ κ°μ Έμ€λ λͺ¨μ΅μ νμΈν μ μμ΅λλ€.
1.2. κ° λ³κ²½νκΈ°
π΅ df.loc[ ] / df.iloc[ ]
λ₯Ό μ¬μ©ν΄ νμ μ κ·Όνκ³ κ°μ λ°κΏ μλ μμ΅λλ€.
df.loc['A'] = [85,100,92]
df
>>
κ΅μ΄ μν μμ΄
A 85 100 92
B 92 92 90
C 88 84 90
D 80 90 82
Aμ μμ΄μ±μ μ΄ 90 μμ 92λ‘ λ°λκ²μ νμΈν μ μμ΅λλ€!!
1.3. ν μμ νκΈ°
π΅ drop([index_name])
: ν΄λΉ μΈλ±μ€μ νμ μμ ν©λλ€.
df = df.drop(["D"]).copy()
df
>>
κ΅μ΄ μν μμ΄
A 85 100 90
B 92 92 90
C 88 84 90
Dνμ΄ μμ λ κ²μ νμΈν΄ λ΄ μλ€.
1.4. ββ쑰건μ λ§λ ν κ°μ Έμ€κΈ°
π΅ λ°μ΄ν°λ₯Ό μ μ²λ¦¬νλ κ³Όμ μμ νμν λΆλΆμ κ°μ ΈμμΌνλ κ²½μ°κ° λΉλ²νκΈ° λλ¬Έμ μμ£Ό μ¬μ©νλ ꡬ문μ λλ€!!
π΅ df [df[column] ~ condition]
: λ°μ΄ν°νλ μμ λ°νν©λλ€.
df[df['κ΅μ΄']==92]
>>
κ΅μ΄ μν μμ΄
B 92 92 90
df[df['μμ΄']==90]
>>
κ΅μ΄ μν μμ΄
B 92 92 90
C 88 84 90
1.5. ν¬ν¨κ΄κ³ νμ νκΈ°
π΅ isin([list])
: Boolean λ°ν
ex) df[βκ΅μ΄β].isin([92]) : 92κ° df[βκ΅μ΄β] μ μλμ§ νμΈν©λλ€.
df['κ΅μ΄'].isin([92])
>>
A False
B True
C False
Name: κ΅μ΄, dtype: bool
1.6. ν κ°μ Έμ€κΈ°
π΅ df.sample(frac)
: frac λΉμ¨λ§νΌ λλ€νκ² νμ κ°μ Έμ΅λλ€.
df.sample(frac = 0.5)
>>
κ΅μ΄ μν μμ΄
A 85 100 90
B 92 92 88
df.sample(frac = 0.5)
>>
κ΅μ΄ μν μμ΄
C 88 84 90
A 85 100 90
λλ€νκ² κ°μ Έμ€κΈ° λλ¬Έμ κ°μ μ½λμ λν΄ λ¦¬ν΄κ°μ΄ λ€λ₯Έ κ²μ νμΈν μ μμ΅λλ€!!
π΅ df.sample(n)
: n κ°μλ§νΌ λλ€νκ² νμ κ°μ Έμ΅λλ€.
df.sample(n = 2)
>>
κ΅μ΄ μν μμ΄
A 85 100 90
C 88 84 90
df.sample(n = 2)
>>
κ΅μ΄ μν μμ΄
B 92 92 88
A 85 100 90
sample() ν¨μλ λλ€νκ² κ°μ Έμ€κΈ° λλ¬Έμ κ°μ μ½λμ λν΄ λ¦¬ν΄κ°μ΄ λ€λ₯Έ κ²μ νμΈν μ μμ΅λλ€.
π΅ df.nlargest(n, column)
: column κΈ°μ€ ν° μμλλ‘ nκ°μ νμ κ°μ Έμ΅λλ€.
df.nlargest(2, 'κ΅μ΄')
>>
κ΅μ΄ μν μμ΄
B 92 92 88
C 88 84 90
π΅ df.smallest(n, column)
: column κΈ°μ€ μμ μμλλ‘ nκ°μ νμ κ°μ Έμ΅λλ€.
df.nsmallest(2, 'μν')
>>
κ΅μ΄ μν μμ΄
C 88 84 90
B 92 92 88
π΅ μ΄λ κ² κ°λ¨ν λ°μ΄ν°λ₯Ό ν΅ν΄ νμ μ κ·Όνλ λ²μ μμ보μμ΅λλ€.
π΅ λ°μ΄ν°λ₯Ό μ μ²λ¦¬νλ κ³Όμ μμ νμ μ€μ¬μΌλ‘ νλ κ²½μ°λ μ μ§λ§, μμλλ κ²λ λμμ§ μλ€κ³ μκ°ν©λλ€!!
Leave a comment