기본 콘텐츠로 건너뛰기

라벨이 교차표인 게시물 표시

[matplotlib]quiver()함수

[data analysis] 피벗테이블(Pivot table)

피벗테이블(Pivot table) 기준되는 항목을 축(행 또는 열)으로 지정하여 표로 작성하는 것을 피벗테이블(pivot table)이라하며 함수 pandas.pivot_table(data, values=None, index=None, columns=None, aggfunc='mean', …) 를 적용합니다. 패키지 FinanceDataReader의 함수에 의해 호출한 주가 자료는 열이름은 Open, High, Low, Close, Volume, Change를 포함합니다. 각각 시가, 고가, 저가, 종가, 거래량을 의미하며 Change는 전날 종가에 비해 현재 시가의 비율입니다. 호출한 자료에서 Change를 목록화한후 그 목록에 따른 다른 값들의 평균을 나타내 봅니다. 이 표를 위해서 Change가 행 또는 열에 지정되어야 하고 나머지 중 타겟이 되는 부분을 values로 지정하여야 합니다. import numpy as np import pandas as pd import FinanceDataReader as fdr st=pd.Timestamp(2023,8, 26) et=pd.Timestamp(2024, 8,8) nme=['Open', 'High','Low','Close', 'Change', 'Volume'] da=fdr.DataReader('KS11', st, et)[nme] da.head(2).round(3) Open High Low Close Change Volume Date 2023-08-28 2534.42 2543.41 2525.64 ...

[data analysis] 조건부확률

조건부확률(conditional probability) 관련된 내용 확률(probability) 독립사건(independent event) 표 1은 부모의 대학 졸업 여부에 따른 아이들이 고등학교 졸업 후 바로 대학 입학 여부를 조사한 것입니다. 표 1 부모와 대학 신입생 자료 P:parent, C:children C / P P yes P no C total C yes 231 214 445 C no 49 298 347 P total 280 512 792 표 1에서 마지막행과 열을 제외한 기본 자료는 pandas.DataFrame() 함수를 사용하여 작성합니다. 이 자료를 기준으로 행합과 열합을 생성하기 위해 메서드 .sum() 을 사용합니다. d=pd.DataFrame([[231, 214],[49, 298]]) d 0 1 0 231 214 1 49 298 d["2"]=d.sum(axis=1) d 0 1 2 0 231 214 445 1 49 298 347 d.loc["2",:]=d.sum(axis=0) d.columns=["P:yes","P:no","C:total"] d.index=["C:yes","C:no","P:total"] d P:yes P:no C:total C:yes 231 214 445 C:no 49 298 347 P:total 280 512 792 위의 자료로부터 다음을 결정해 봅니다. 1) 학위를 가진 부모에서 아이들이 대학에...

[data analysis] 교차표(cross tabulation): crosstab

교차표(cross tabulation): crosstab pandas.crosstab() 함수는 pd.pivot_table() 로 생성되는 피봇테이블과 유사하지만 두 개이상의 변수들에 대한 교차표 작성에 집중합니다. 다음 자료는 코스피 일일자료를 호출한 것으로 Open, High, Low, Close, Volume, Change 특성으로 구성된 것입니다. import numpy as np import pandas as pd import FinanceDataReader as fdr st=pd.Timestamp(2023,8, 26) et=pd.Timestamp(2024, 8,8) nme=['Open', 'High','Low','Close', 'Change', 'Volume'] da=fdr.DataReader('KS11', st, et)[nme] da.head(2).round(3) Open High Low Close Change Volume Date 2023-08-28 2534.42 2543.41 2525.64 2543.41 0.010 483587568 2023-08-29 2550.76 2556.98 2545.27 2552.16 0.003 441365852 위 자료 da의 Change를 제외한 나머지 특성들(features)들을 1일 전값과의 변화율로 변환합니다. da1=da.drop("Change...