목록dataframe (6)
개발은 처음이라 개발새발
Series와 DataFrame에서는 공통적으로 인덱싱이 활용됩니다. 인덱싱이란 index를 갖는 자료에서 index를 활용하여 값을 추출해내는 것을 뜻합니다. 이 인덱싱을 도와주는 역할을 하는 것들을 Indexer라고 합니다. 그렇다면 Indexer에는 어떤 종류가 있는지 보겠습니다. #Indexer의 종류 - [] (Braket Indexing) 라벨(인덱스 이름)이나 정수 인덱스를 이용하여 데이터에 접근 또는 슬라이싱 가능 ex> series['label'], series[0] - .loc[] (Label-based Indexing) 라벨(인덱스 이름)을 사용하여 데이터에 접근하거나 조작하는 인덱서 - .iloc[] (Integer-based Indexing) 정수 인덱스를 사용하여 데이터에 접근하..
https://data-so-hard.tistory.com/50 merge()함수로 데이터프레임 병합하기 [python/pandas] 안녕하세요. 2주만의 포스팅을 하게 됐습니다. 오늘 포스팅할 것은 concat()함수에 이어 merge()함수로 데이터프레임을 병합하는 것입니다. merge()함수는 SQL의 join과 비슷한 방식으로 어떤 기준에 의 data-so-hard.tistory.com 지난 1편에 이어서 merge 함수의 옵션에 대해 알아보겠습니다. 이번 시간에는 'how=' 옵션에 대해 알아보려고 하는데요. how 옵션을 통해서는 왼쪽과 오른쪽을 기준으로 데이터 값을 병합합니다. 또한 left_on과 right_on 옵션을 사용하면 좌우 데이터프레임의 키값을 다르게 지정할 수 있습니다. 우선 ..
지난 편에서는 한글 폰트를 사용했을 때 발생하는 오류를 해결했습니다. 이번 시간에는 matplotlib에서 제공하는 다양한 스타일을 소개하고 그래프를 좀 더 꾸며보기로 하겠습니다. 우선 지난 편에 만들었던 그래플 다시 한번 보겠습니다. 보게 되면 제목과 x,y축에 있는 한글들이 너무 작습니다. 그리고 연도들이 너무 붙어 있어 명확하게 무엇을 의미하는지 확인하기가 힘듭니다. 우선 이 3가지의 문제들을 해결해보겠습니다. 우선 연도부터 건드려보겠습니다. 숫자들이 붙어 있는 것은 크기를 줄여서 해결할 수도 있지만 그렇게 되면 너무 작아 안 보이는 것은 같겠죠. 이럴 때는 숫자의 각도를 변경해 해결할 수 있습니다. 그리고 표의 사이즈 크기를 키우는 것도 하나의 방법이니 모두 적용해보겠습니다. 그래프의 크기를 키우..
import pandas as pd import matplotlib.pyplot as plt df = pd.read_excel('./시도별 전출입 인구수.xlsx', header=0) #빈칸 채워주기 df = df.fillna(method='ffill') #서울에서 다른 지역으로 이동하는 인구수 mask = (df['전출지별'] == '서울특별시') & (df['전입지별'] != '서울특별시') df_seoul = df[mask] df_seoul = df_seoul.drop(['전출지별'], axis=1) #불필요한 전출지별 제게 df_seoul.rename({'전입지별':'전입지'}, axis=1, inplace=True) #컬럼명 변경 df_seoul.set_index('전입지', inplace=Tr..
지난 글에서 네이버 분데스리가 팀순위 페이지까지 연동하는 것을 해봤는데요. 코드는 아래와 같습니다. from selenium import webdriver import pandas as pd #open webdriver chrome_driver = './chromedriver.exe' driver = webdriver.Chrome(chrome_driver) df_bundes_team = pd.DataFrame(columns = ['rank', 'team', 'game', 'win_pt', 'win', 'draw', 'lose', 'gf', 'ga', 'goal_diff']) bundes_football = "https://sports.news.naver.com/wfootball/record/index?c..
우선 데이터 프레임을 만듭니다. import pandas as pd exam_data = {'이름': ['민수', '철수', '광수'], '수학': [80, 90, 100], '영어': [95, 88, 56], '국어' : [72, 85, 95]} df = pd.DataFrame(exam_data, index= ['A','B','C']) print(df) 우선 지난 1편에서 한 loc와 iloc를 활용해 특정 범위 데이터 표출 예시를 해보겠습니다. 이와 함께 광수와 철수의 영어 점수를 변경해보겠습니다. #iloc로 특정 데이터 보여주기 label1 = df.iloc[0 : 2] print(label1, '\n') #loc로 특정 데이터 보여주기 label2 = df.loc['A' : 'C'] print(..