3. Pandas 활용
페이지 정보
작성자 관리자 댓글 0건 조회 4,595회 작성일 19-10-01 00:03본문
3. Pandas 활용
# 조건 선택
# -*- coding: utf-8 -*-
import pandas as pd
import numpy as np
from numpy.random import randn
np.random.seed(101)
data=randn(5,4)
df = pd.DataFrame(data, index='A B C D E'.split(), columns='가 나 다 라'.split())
print(df)
print(df>0)
print(df[df>0])
print(df[df>0])
print(df[df['가']>0])
print(df[df['가']>0]['라'])
print(df[df['가']>0][['다','라']])
print(df[(df['가']>0) & (df['나']>0 )])
> python test.py
가 나 다 라
A 2.706850 0.628133 0.907969 0.503826
B 0.651118 -0.319318 -0.848077 0.605965
C -2.018168 0.740122 0.528813 -0.589001
D 0.188695 -0.758872 -0.933237 0.955057
E 0.190794 1.978757 2.605967 0.683509
가 나 다 라
A True True True True
B True False False True
C False True True False
D True False False True
E True True True True
가 나 다 라
A 2.706850 0.628133 0.907969 0.503826
B 0.651118 NaN NaN 0.605965
C NaN 0.740122 0.528813 NaN
D 0.188695 NaN NaN 0.955057
E 0.190794 1.978757 2.605967 0.683509
가 나 다 라
A 2.706850 0.628133 0.907969 0.503826
B 0.651118 NaN NaN 0.605965
C NaN 0.740122 0.528813 NaN
D 0.188695 NaN NaN 0.955057
E 0.190794 1.978757 2.605967 0.683509
가 나 다 라
A 2.706850 0.628133 0.907969 0.503826
B 0.651118 -0.319318 -0.848077 0.605965
D 0.188695 -0.758872 -0.933237 0.955057
E 0.190794 1.978757 2.605967 0.683509
A 0.503826
B 0.605965
D 0.955057
E 0.683509
Name: 라, dtype: float64
다 라
A 0.907969 0.503826
B -0.848077 0.605965
D -0.933237 0.955057
E 2.605967 0.683509
가 나 다 라
A 2.706850 0.628133 0.907969 0.503826
E 0.190794 1.978757 2.605967 0.683509
계속하려면 아무 키나 누르십시오 . . .
# 인덱스 관련 추가사항
# -*- coding: utf-8 -*-
import pandas as pd
import numpy as np
from numpy.random import randn
np.random.seed(101)
data=randn(5,4)
df = pd.DataFrame(data, index='A B C D E'.split(), columns='가 나 다 라'.split())
print(df)
df.reset_index() # 인덱스를 column으로 바꿈
print(df)
새인덱스 = '하나 둘 셋 넷 다섯'.split()
df['숫자'] = 새인덱스
print(df)
df.set_index('숫자',inplace=True)
print(df)
> python test.py
가 나 다 라
A 2.706850 0.628133 0.907969 0.503826
B 0.651118 -0.319318 -0.848077 0.605965
C -2.018168 0.740122 0.528813 -0.589001
D 0.188695 -0.758872 -0.933237 0.955057
E 0.190794 1.978757 2.605967 0.683509
가 나 다 라
A 2.706850 0.628133 0.907969 0.503826
B 0.651118 -0.319318 -0.848077 0.605965
C -2.018168 0.740122 0.528813 -0.589001
D 0.188695 -0.758872 -0.933237 0.955057
E 0.190794 1.978757 2.605967 0.683509
가 나 다 라 숫자
A 2.706850 0.628133 0.907969 0.503826 하나
B 0.651118 -0.319318 -0.848077 0.605965 둘
C -2.018168 0.740122 0.528813 -0.589001 셋
D 0.188695 -0.758872 -0.933237 0.955057 넷
E 0.190794 1.978757 2.605967 0.683509 다섯
가 나 다 라
숫자
하나 2.706850 0.628133 0.907969 0.503826
둘 0.651118 -0.319318 -0.848077 0.605965
셋 -2.018168 0.740122 0.528813 -0.589001
넷 0.188695 -0.758872 -0.933237 0.955057
다섯 0.190794 1.978757 2.605967 0.683509
계속하려면 아무 키나 누르십시오 . . .
# Groupby
# -*- coding: utf-8 -*-
import pandas as pd
data = {'회사':['구글','구글','애플','애플','아마존','아마존'],
'이름':['김씨','이씨','박씨','최씨','장씨','마씨'],
'매출':[200,120,340,124,243,350]}
df=pd.DataFrame(data)
print(df)
print("\n mean()\n**************")
by_comp=df.groupby("회사")
obj = by_comp.mean()
print(obj)
obj2=df.groupby("회사").mean()
print(obj2)
print("\n std()\n**************")
obj3 = by_comp.std()
print(obj3)
print("\n min()\n**************")
obj3 = by_comp.min()
print(obj3)
print("\n max()\n**************")
obj3 = by_comp.max()
print(obj3)
print("\n count()\n**************")
obj3 = by_comp.count()
print(obj3)
print("\n describe()\n**************")
obj3 = by_comp.describe()
print(obj3)
> python test.py
회사 이름 매출
0 구글 김씨 200
1 구글 이씨 120
2 애플 박씨 340
3 애플 최씨 124
4 아마존 장씨 243
5 아마존 마씨 350
mean()
**************
매출
회사
구글 160.0
아마존 296.5
애플 232.0
매출
회사
구글 160.0
아마존 296.5
애플 232.0
std()
**************
매출
회사
구글 56.568542
아마존 75.660426
애플 152.735065
min()
**************
이름 매출
회사
구글 김씨 120
아마존 마씨 243
애플 박씨 124
max()
**************
이름 매출
회사
구글 이씨 200
아마존 장씨 350
애플 최씨 340
count()
**************
이름 매출
회사
구글 2 2
아마존 2 2
애플 2 2
describe()
**************
매출
count mean std min 25% 50% 75% max
회사
구글 2.0 160.0 56.568542 120.0 140.00 160.0 180.00 200.0
아마존 2.0 296.5 75.660426 243.0 269.75 296.5 323.25 350.0
애플 2.0 232.0 152.735065 124.0 178.00 232.0 286.00 340.0
계속하려면 아무 키나 누르십시오 . . .
댓글목록
등록된 댓글이 없습니다.