[python] reset_index( )
·
python
reset_index() 1. 새로운 인덱스를 연속 숫자 형으로 할당 - 노랑 2. 기존 인덱스는 index 라는 새로운 칼럼명으로 추가됨 -파랑 titanic_df.reset_index() drop = True 로 설정하면 기존 인덱스는 새로운 칼럼으로 추가되지 않고 삭제 된다. titanic_df.reset_index(drop=True)
[python] stack & unstack
·
python
damn = pd.DataFrame({'대청':[36.477629,127.480822], '용담':[35.945119,127.524596], '보령':[36.248082,126.645782], '밀양':[35.462742,128.928952], '보현산':[36.126778,128.949904]}) damn stack : 컬럼(column) => 인덱스(index) 컬럼에 있는 댐이름들을 인덱스로 옮김 damn.stack() 0 대청 36.477629 용담 35.945119 보령 36.248082 밀양 35.462742 보현산 36.126778 1 대청 127.480822 용담 127.524596 보령 126.645782 밀양 128.928952 보현산 128.949904 dtype: float64 un..
[python] bar / barh 그래프
·
python
bar 그래프 fig=plt.figure(figsize=(8,4),dpi=100) ax=fig.subplots(1,1) X=np.array([5,25,50,20]) ax.bar(range(len(X)),X) bar: various width fig=plt.figure(figsize=(8,4),dpi=100) axs=fig.subplots(1,3) def bar_width(ax,data,w): ax.bar(range(len(data)),data,width=w) data=np.array([5,25,50,20]) bar_width(axs[0],data,0.5) bar_width(axs[1],data,0.8) bar_width(axs[2],data,1) barh : 수평막대 fig=plt.figure(figsi..
[python] axis=0 axis=1
·
python
매번 헷갈려서 적어보는 포스팅.......................... axis=1은 행방향(가로방향) 인데 drop함수(열방향)에서만 예외다 라고 외워야 겠다................ import pandas as pd df = pd.DataFrame([[1, 1, 1, 1], [2, 2, 2, 2], [3, 3, 3, 3]], columns=["col1", "col2", "col3", "col4"]) df # mean, sum, max, min 등등 에서 axis=1 은 행방향(가로방향) df.mean(axis=1) # 행의 평균 (가로) 0 1.0 1 2.0 2 3.0 dtype: float64 # drop 에서 axis=1 은 열방향(세로방향) df.drop('col1', axis=1) ..
[python] DataFrame 생성하기/ 넘파이 ndarray, 리스트, 딕셔너리로 변환하기
·
python
1. 넘파이 ndarray, 리스트, 딕셔너리를 => DataFrame으로 변환하기 1.1 리스트 list= > dataframe으로 변환 df_list2=pd.DataFrame([[1,2,3],[11,12,13]],columns=['col1','col2','col3']) df_list2 1.2 ndarray = > dataframe으로 변환 df_array2=pd.DataFrame(np.array([[1,2,3],[11,12,13]]), columns=col_name2) df_array2 1.3 딕셔너리 = > dataframe으로 변환 # key => 문자열 칼럼명, value=> 칼럼 데이터로 매핑 dict={'col1':[1,11], 'col2': [2,22], 'col3': [3,33]} df_..
[python] plot / bar / scatter 그래프
·
python
1. plot 그래프 형태: ax.plot(x좌표, y좌표) fig=plt.figure(figsize=(10,5), dpi=50) (ax1,ax2)=fig.subplots(1,2) ax1.plot([1,2,3],[1,2,4]) ax2.plot([1,2,3],[4,2,1]) fig=plt.figure(figsize=(10,5), dpi=50) (ax1,ax2)=fig.subplots(1,2) ##1 X=np.arange(0,100,10) Y=X**2 ax1.plot(X,Y,'ob') ##2 X1=np.arange(10) Y1=(X1-5)**2 ax2.plot(X1,Y1,'.--r') fig=plt.figure(figsize=(5,5), dpi=50) ax1=fig.subplots(1,1) ##1 X=np...
[python] figure & axes
·
python
그래프 그릴때 필요한 코드이다. fig,ax = plt.subplots(행 개수, 열 개수, figsize = (가로 사이즈, 세로 사이즈), dpi= 해상도 값) # 기본적인 형태 fig,ax = plt.subplots() 두개 이상 그릴때 fig,ax = plt.subplots(2,1)
[python] groupby절
·
python
df_last 데이터로 groupby를 해보겠다 # 지역별로 groupby 한 결과를 살펴보면 for gp, df in df_last.groupby(['지역명']): gp df # 지역별로 groupby를 한 후 분양가격의 column만 추출 for gp,sr in df_last.groupby(['지역명'])['분양가격']: gp sr # 지역별 분양가격의 평균 df_last.groupby(['지역명'])['분양가격'].mean() # 전용면적, 지역별 평당분양가격 df_last.groupby(["전용면적", "지역명"])["평당분양가격"].mean()
[python] object 형 => numerical 형태로 변경해주는 to_numeric 함수
·
python
df_last["분양가격(㎡)"] * 3.3 이라는 식을 계산해야 하는데 df_last["분양가격(㎡)"]의 type이 object이기 때문에 오류가 발생함. int 나 float 형태가 아니기 때문에 3.3을 곱할 수 가 없는거임 그래서 int나 float으로 바꿔줘야해 to_numeric을 이용하여 숫자형식으로 변경 df_last["분양가격(㎡)"] #변경전 object타입 0 5841 1 5652 2 5882 3 5721 4 5879 ... 4330 3882 4331 NaN 4332 3898 4333 NaN 4334 3601 Name: 분양가격(㎡), Length: 4335, dtype: object df_last["분양가격"] = pd.to_numeric(df_last["분양가격(㎡)"], err..
[python] 결정 트리 시각화 Graphviz 설치
·
python
결정 트리 알고리즘이 어떠한 규칙을 가지고 트리를 생성하는지 시각적으로 보기 위해 Graphviz 을 설치합니다. Graphviz는 파이썬으로 개발된 패키지가 아니기 때문에 파이썬 기반의 모듈과 인터페이스 해주기 위해서 Graphviz를 설치한 후 파이썬과 인터페이스 할 수 있는 파이썬 래퍼(Wrapper)모듈을 별도로 설치해야 합니다. 1. https://graphviz.org/download/ 에서 운영체제에 맞는 설치 파일을 다운로드하여 설치합니다. 2. 설치 후 Anaconda Prompt 을 관리자 권한으로 들어간 후 Graphviz 파이썬 래퍼 (wrapper) 모듈을 설치합니다. pip 명령어를 사용하여 graphviz 모듈을 설치합니다. (pip install graphviz 를 입력) 3..