본문 바로가기
728x90
반응형
SMALL

Python Library/Pandas28

[Pandas] groupby pandas.DataFrame.groupby 매퍼를 사용하거나 일련의 열로 DataFrame을 그룹화한다. 그룹화 작업에는 개체 분할, 함수 적용 및 결과 결합의 일부 조합이 포함된다. 이는 이러한 그룹에서 많은 양의 데이터 및 계산 작업을 그룹화하는 데 사용할 수 있다. import pandas as pd df = pd.DataFrame({'Animal': ['Falcon', 'Falcon', 'Parrot', 'Parrot'], 'Max Speed': [380., 370., 24., 26.]}) df Animal Max Speed 0 Falcon 380.0 1 Falcon 370.0 2 Parrot 24.0 3 Parrot 26.0 df.groupby(['Animal']).mean() Max Spee.. 2023. 3. 30.
[Pandas] rolling pandas.DataFrame.rolling 판다스에서는 롤링 윈도우 계산을 제공한다. import pandas as pd df = pd.DataFrame({'B': [0, 1, 2, np.nan, 4]}) df B 0 0.0 1 1.0 2 2.0 3 NaN 4 4.0 window 관측치 2개의 window 길이를 사용한 롤링 합계는 다음과 같이 구현 가능하다. df.rolling(2).sum() B 0 NaN 1 1.0 2 3.0 3 NaN 4 NaN window 범위가 2초인 롤링 합계는 다음과 같다. df_time = pd.DataFrame({'B': [0, 1, 2, np.nan, 4]}, index = [pd.Timestamp('20130101 09:00:00'), pd.Timestamp('20.. 2023. 3. 30.
[Pandas] 데이터프레임 만들기 데이터프레임 만들기 import pandas as pd import numpy as np csv_data = '''\ 구분,죄종,발생검거,건수 중부,살인,발생,3 중부,살인,검거,2 중부,강도,발생,8 중부,강도,검거,8 중부,사기,발생,143 중부,사기,검거,105 ''' with open('중부 지역 강력 사건 발생 검거 통계.csv', 'w', encoding='UTF-8') as f: f.write(csv_data) df = pd.read_csv('중부 지역 강력 사건 발생 검거 통계.csv') pd.pivot_table(df, index=['죄종', '발생검거'], aggfunc=np.sum) 2022. 10. 26.
[Pandas] 타이타닉 생존자 분석 타이타닉 생존자 분석 https://www.kaggle.com/datasets/tedllh/titanic-train에서 csv 파일을 다운한다. import numpy as np import pandas as pd import matplotlib.pyplot as plt titanic_df = pd.read_csv('titanic_train.csv') titanic_df titanic_df['Survived'].groupby(titanic_df['Sex']).mean() Sex female 0.742038 male 0.188908 Name: Survived, dtype: float64 titanic_df.pivot_table(index=['Sex'])['Survived'] Sex female 0.7420.. 2022. 10. 25.
[Pandas] Iris (붓꽃) Iris (붓꽃) 비짜루목 붓꽃과 붓꽃속에 속하는 여러해 살이 풀 또는 그 식물의 꽃을 말한다. 꽃봉오리가 먹을 묻힌 붓과 같이 생겼다 하여 붙여진 이름이다. import numpy as np import pandas as pd import matplotlib.pyplot as plt from sklearn import datasets iris = datasets.load_iris() irisdt = pd.DataFrame(iris['data'], columns=iris['feature_names']) irisdt plt.scatter(irisdt['sepal length (cm)'], irisdt['sepal width (cm)'], c=iris.target) for f0 in iris['feature.. 2022. 10. 25.
[Pandas] 시각화 시각화 import numpy as np import pandas as pd import matplotlib.pyplot as plt se0 = pd.Series(np.random.randn(100).cumsum()) se0.plot() df = pd.DataFrame(np.random.randn(100, 5).cumsum(0), columns= ['arr1', 'arr2', 'arr3', 'arr4', 'arr5'] ) df.plot() 막대 그래프 se0.plot(kind='bar') df.plot(kind='bar') # 가로 바 차트 se0.plot(kind='barh') df.plot(kind='barh') df.plot(kind='bar', stacked=True) 히스토그램 값의 빈도를 분리.. 2022. 10. 23.
[Pandas] HTML 파일에서 데이터 입출력 HTML 파일에서 데이터 입출력 import pandas as pd import numpy as np naver_finance_url = "https://finance.naver.com/" html_dfs = pd.read_html(naver_finance_url, encoding = 'euc-kr') print("TOP 종목") html_dfs[0] # table의 개수 len(html_dfs) 12 # html 저장 html_dfs[0].to_html('naver_finance.html') 2022. 10. 21.
[Pandas] 폴더 안에 있는 여러 개의 csv 파일 합치기 폴더 안에 있는 여러 개의 csv 파일 합치기 import pandas as pd from glob import glob # 폴더 내의 모든 csv파일 목록 불러오기 file_names = glob("/data/*.csv") # 빈 데이터프레임 하나 생성 total = pd.DataFrame() #빈 데이터프레임 하나를 생성 for file_name in file_names: # csv파일을 하나씩 열어 임시 데이터프레임으로 생성 temp = pd.read_csv(file_name, sep = ',', encoding = 'utf-8') #전체 데이터프레임에 추가하여 넣음 total = pd.concat([total, temp]) total.to_csv("/data/total.csv") df = pd.r.. 2022. 10. 20.
[Pandas] shuffle shuffle pandas에서 데이터를 섞어주는 함수가 존재한다. df # row 전체 shuffle df = df.sample(frac = 1) df # shuffling하고 index reset df = df.sample(frac = 1).reset_index(drop = True) df 2022. 10. 17.
[Pandas] xlsx (엑셀 파일) xlsx XLSX 파일 확장명을 가진 파일은 Microsoft Excel Open XML 형식 스프레드 시트 파일이다. Microsoft Excel 버전 2007 이상에서 작성된 XML 기반 스프레드 시트 파일이다. XLSX 파일은 워크 시트에 저장된 셀의 데이터를 구성한다. 워크 시트는 여러 워크 시트가 포함 된 파일 인 통합 문서에 저장됩니다. 셀은 행과 열로 배치되며 스타일, 서식 지정, 수학 함수 등을 포함 할 수 있다. pandas.read_excel(io, sheet_name=0, header=0, names=None, index_col=None, usecols=None, squeeze=None, dtype=None, engine=None, converters=None, true_values=.. 2022. 8. 18.
728x90
반응형
LIST