728x90
Subset Observations(Rows)¶
In [1]:
import pandas as pd
In [2]:
df = pd.DataFrame(
{"a" : [4 ,5, 6, 4, 2, 4, 5, 7],
"b" : [7, 8, 9, 7, 10, 3, 2, 1],
"c" : [10, 11, 12, 10, 11, 14, 3, 10]})
In [3]:
df
Out[3]:
a | b | c | |
---|---|---|---|
0 | 4 | 7 | 10 |
1 | 5 | 8 | 11 |
2 | 6 | 9 | 12 |
3 | 4 | 7 | 10 |
4 | 2 | 10 | 11 |
5 | 4 | 3 | 14 |
6 | 5 | 2 | 3 |
7 | 7 | 1 | 10 |
a행에 5이상인 값을 출력합니다.¶
In [4]:
df[df.a > 5]
Out[4]:
a | b | c | |
---|---|---|---|
2 | 6 | 9 | 12 |
7 | 7 | 1 | 10 |
a행이 7이 아닌값을 출력합니다.¶
In [5]:
df[df["a"] != 7]
Out[5]:
a | b | c | |
---|---|---|---|
0 | 4 | 7 | 10 |
1 | 5 | 8 | 11 |
2 | 6 | 9 | 12 |
3 | 4 | 7 | 10 |
4 | 2 | 10 | 11 |
5 | 4 | 3 | 14 |
6 | 5 | 2 | 3 |
a행에 2가 존재하는지 체크합니다.¶
In [6]:
df['a'].isin([2])
Out[6]:
0 False 1 False 2 False 3 False 4 True 5 False 6 False 7 False Name: a, dtype: bool
In [7]:
df[df['a'].isin([2])]
Out[7]:
a | b | c | |
---|---|---|---|
4 | 2 | 10 | 11 |
- 다음과 값이 데이터프레임안에 넣어주게 되면 True에 해당하는값만 출력합니다.
결측치를 체크합니다 - 1¶
In [8]:
pd.isnull(df)
Out[8]:
a | b | c | |
---|---|---|---|
0 | False | False | False |
1 | False | False | False |
2 | False | False | False |
3 | False | False | False |
4 | False | False | False |
5 | False | False | False |
6 | False | False | False |
7 | False | False | False |
- 결측치가 아닌값은 False, 결측치인 값은 True로 표현됩니다.
결측치를 체크합니다 - 2¶
In [9]:
pd.notnull(df)
Out[9]:
a | b | c | |
---|---|---|---|
0 | True | True | True |
1 | True | True | True |
2 | True | True | True |
3 | True | True | True |
4 | True | True | True |
5 | True | True | True |
6 | True | True | True |
7 | True | True | True |
- 결측치가 아닌값은 True, 결측치인 값은 False로 표현됩니다.
In [10]:
df.notnull().sum()
Out[10]:
a 8 b 8 c 8 dtype: int64
- 다음과 값이 합을 구할수도 있습니다.
중복값을 제거합니다.¶
In [11]:
df.drop_duplicates()
Out[11]:
a | b | c | |
---|---|---|---|
0 | 4 | 7 | 10 |
1 | 5 | 8 | 11 |
2 | 6 | 9 | 12 |
4 | 2 | 10 | 11 |
5 | 4 | 3 | 14 |
6 | 5 | 2 | 3 |
7 | 7 | 1 | 10 |
처음 N개3#51032; 행을 출력합니다.¶
In [12]:
df.head(5)
Out[12]:
a | b | c | |
---|---|---|---|
0 | 4 | 7 | 10 |
1 | 5 | 8 | 11 |
2 | 6 | 9 | 12 |
3 | 4 | 7 | 10 |
4 | 2 | 10 | 11 |
마지막 N개의 행을 출력합니다.¶
In [13]:
df.tail(5)
Out[13]:
a | b | c | |
---|---|---|---|
3 | 4 | 7 | 10 |
4 | 2 | 10 | 11 |
5 | 4 | 3 | 14 |
6 | 5 | 2 | 3 |
7 | 7 | 1 | 10 |
행의 일부를 무작위로 선택합니다.¶
In [14]:
df.sample(frac=0.5)
Out[14]:
a | b | c | |
---|---|---|---|
4 | 2 | 10 | 11 |
7 | 7 | 1 | 10 |
3 | 4 | 7 | 10 |
6 | 5 | 2 | 3 |
In [15]:
df.sample(n=2)
Out[15]:
a | b | c | |
---|---|---|---|
7 | 7 | 1 | 10 |
6 | 5 | 2 | 3 |
In [16]:
df
Out[16]:
a | b | c | |
---|---|---|---|
0 | 4 | 7 | 10 |
1 | 5 | 8 | 11 |
2 | 6 | 9 | 12 |
3 | 4 | 7 | 10 |
4 | 2 | 10 | 11 |
5 | 4 | 3 | 14 |
6 | 5 | 2 | 3 |
7 | 7 | 1 | 10 |
행을 위치로 접근하여 출력합니다.¶
In [17]:
df.iloc[0:5]
Out[17]:
a | b | c | |
---|---|---|---|
0 | 4 | 7 | 10 |
1 | 5 | 8 | 11 |
2 | 6 | 9 | 12 |
3 | 4 | 7 | 10 |
4 | 2 | 10 | 11 |
In [18]:
# 끝에서부터 2개를 출력합니다.
df.iloc[-2:]
Out[18]:
a | b | c | |
---|---|---|---|
6 | 5 | 2 | 3 |
7 | 7 | 1 | 10 |
a행을 기준으로 큰값 상위 3개를 출력합니다.¶
In [19]:
df.nlargest(3, 'a')
Out[19]:
a | b | c | |
---|---|---|---|
7 | 7 | 1 | 10 |
2 | 6 | 9 | 12 |
1 | 5 | 8 | 11 |
a행을 기준으로 작은값 하위 3개를 출력합니다.¶
In [20]:
df.nsmallest(3, 'a')
Out[20]:
a | b | c | |
---|---|---|---|
4 | 2 | 10 | 11 |
0 | 4 | 7 | 10 |
3 | 4 | 7 | 10 |
In [1]:
from IPython.core.display import display, HTML
display(HTML("<style>.container {width:90% !important;}</style>"))
'Python' 카테고리의 다른 글
[Pandas] Pandas Cheat Sheet(Summarize Data) (0) | 2021.06.20 |
---|---|
[Pandas] Pandas Cheat Sheet(Subset Variables (Columns)) (0) | 2021.06.20 |
[Pandas] Pandas Cheat Sheet(Reshaping Data) (0) | 2021.05.20 |
[Pandas] Pandas Cheat Sheet (Creating DataFrames) (0) | 2021.05.16 |
[Pandas] Pandas Cheat Sheet (판다스 치트 시트) (1) | 2021.05.16 |