본문 바로가기

Python13

3/22 - Pandas; Python 기본 함수 및 개념 [기억할 개념] 1. pandas의 데이터 오브젝트 1-1. 인덱스(index) : 데이터프레임(DataFrame) 또는 시리즈(Series)의 각 행 또는 각 요소에 대한 식별자 DataFrame 자료구조에도 인덱스를 설정할 수 있음 0부터 시작하는 숫자 뿐아니라 임의로 문자로 적용할 수 있음 아예 처음부터 파일 불러올때 , 인덱스를 지정하는 것도 가능 1-2. 인덱스 관련 함수 set_index(): 특정 컬럼에 들어있는 값을 인덱스로 활용 # df가 가지고 있는 특정 컬럼명을 기준으로 인덱스를 설정하기 data = df.set_index('컬럼명') data.head() # 불러올때 인덱스 지정하기 pd.read_csv('./data/file.csv' , index_col = '컬럼정보') pd.r.. 2024. 3. 22.
3/22 - Pandas; Python 기본 세팅 csv 파일 불러오기 [기억할 개념] 1. vscode에서 세팅할 시, pandas와 numpy 불러오고, 시각화 툴도 가져오면 좋음 import seaborn as sns import pandas as pd import numpy as np 2. csv 파일 불러올 때 유의할 점: 파일 확장자 별로 지정해줘야 함 pd.read_csv('C:/Users/dnalf/OneDrive/바탕 화면/sparta_depth_pr/seoul_merge2.csv') data1 = pd.read_csv('C:/Users/dnalf/OneDrive/바탕 화면/sparta_depth_pr/seoul_merge2.csv') pd.read_excel('C:/Users/dnalf/OneDrive/바탕 화면/sparta_depth_pr/seoul_me.. 2024. 3. 22.
2/6 - 머신러닝모델링; 데이터 전처리_이상치(Outlier) 처리 방법 [기억할 개념] 1. 이상치(Outlier)란: 보통 관측된 데이터 범위에서 많이 벗어난 아주 작은 값 혹은 큰 값 1-1. Extreme Studentized Deviation(ESD) 이용 #최대값, 최소값 확인 print(upper_limit, lower_limit) #값 비교 tips_df[['total_bill']].head(3) #이상치 확인 (아래 조건에 부합=True 값만 추출) cond = (tips_df['total_bill'] > 46.4) cond tips_df[cond] 1-2. IQR(Inter Quantile Range)를 이용 #이상치 확인 (상한값 40.29보다 큰 값만 추출) cond2 = (tips_df['total_bill'] > uppner_limit2) tips_d.. 2024. 2. 6.
2/5 - 머신러닝모델링; 선형회귀&로지스틱회귀 [기억할 개념] 1. 선형회귀 1) 단순선형회귀: x 변수가 1개 from sklearn.linear_model import LinearRegression model_lr = LinearRegression() type(model_lr) x = body_df[['Weight']] y = body_df[['Height']] #데이터 훈련 model_lr .fit(x = x, y = y 해석 #y(키)는 x(몸무게)에 0.86을 곱한 뒤에 109.37을 더해라 2) 다중선형회귀: x 변수가 2개 #1. y= 0.86x + 109.37 #2. 위 식을 활용한 예측 칼럼 추가 #3. 에러값을 각각 계산(error) #4. 양수를 만들기 위해 제곱화 #5. 값을 모두 더함(MSE) #6. 그래프로 그리기 #예측값 .. 2024. 2. 5.
2/2 - Python; 개인과제 피드백 [피드백] * 오답문제만 오답이라고 채점 문제1) 오답 [잘하신 부분] map을 활용한 for 문 출력 [보완해야할 점] 1. 기준치값(n)을 함수의 두번째 전달인자로 받아 설계할 것2. if구문에서 20넘는 것은 과잉으로 잘 구현 했으나 else: 구문에서는 20보다 같거나 작은 것이 과잉으로 판단되었음. 이부분 오류 문제2) [잘하신 부분] 정규표현식 모듈 re와 함수 return 부분을 잘 적용함 [보완해야할 점] map과 print 를 함수 내에 작성하여 완성된 함수로 작성했으면 best 문제3) [잘하신 부분] 좀더 general 한 문제 ex 동명이인이 없는 참여자의 경우 해당 코드가 작성하지 않을 것이나 아이디어는 좋은 방법이라고 여겨짐. 문제를 조금 단순하게 설계한 것의 한계이며 정답은 맞.. 2024. 2. 2.
1/26 - Pandas&Python; 기초 문법② & 개인과제 [기억할 개념]: Python - Pandas 1. concat(): 데이터프레임을 위아래로 or 좌우로 연결 예시 axis: 연결하고자 하는 축 방향 지정 기본값은 0 => 위아래로 연결하는 경우 해당 / 1로 설정 => 좌우로 연결 ignore_index: 연결된 데이터프레임의 인덱스 설정 false => 인덱스 유지 / true => 새로운 인덱스 생성 import pandas as pd # 두 개의 데이터프레임 생성 df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2'], 'B': ['B0', 'B1', 'B2']}) df2 = pd.DataFrame({'A': ['A3', 'A4', 'A5'], 'B': ['B3', 'B4', 'B5']}) # 상하로 데이터프레임 연결 r.. 2024. 1. 26.
1/25 - Pandas&Python; Python 기초 문법① [기억할 개념]: Python - Pandas 1. .iloc[행,열] : 인덱스 번호로 선택 data.iloc[0,2] #행과 열 번호를 통해 특정 데이터를 선택할 수 있음 # iloc을 사용하여 특정 행과 열 선택 selected_data = df.iloc[1:4, 0:2] #인덱스 1부터 3까지의 행과 0부터 1까지의 열 선택 print(selected_data) 2. .loc[로우,컬럼] : 이름으로 선택 data.loc['행이름' , '컬럼명'] #행이름과 컬럼명을 통해서도 특정 데이터를 선택할 수 있음 #loc을 사용하여 특정 행과 열 선택 selected_data = df.loc['b':'d', 'A':'B'] #레이블 'b'부터 'd'까지의 행과 'A'부터 'B'까지의 열 선택 print(.. 2024. 1. 25.
1/23 - 기초 통계학 개념 [기억할 개념] 1. 데이터 리터러시에서의 통계의 역할 : 쉬운 모델링 안에서도 가정 - 검증의 과정이 있기에, 검증하는 과정에서 자주 쓰임. 여기서 통계는 결과를 신뢰하기 위한 최소한의 데이터 볼륨 *평균적인 경향과 개개의 데이터를 구분하는 것이 매우 중요! 2. '확률적(Stochastic)이다.'라는 의미 - 실제로 일이 일어나기 전까지, 확률적이라고 함. 또한 결정되지 않았기 때문에 비결정적임. - 대표적인 사례가 주가 차트로, 정규 분포로 모형화함. - 확률적 움직임을 체계적으로 수식화한 것 -> 분포(Distribution)라고 함. 3. 통계적 확률 - 어떤 시행을 N번 반복할 때, 사건 A가 발생한 횟수를 n(A)라고 한다면 아래와 같이 표현 - 시뮬레이션이 가능할 경우 유용하게 사용 4... 2024. 1. 23.
1/10 - Python 기초 학습 5일차 & Side Project [기억할 개념]1. for문을 한 줄로 표현할 때 2. map + lambda 3. filter: true 값만 뽑아냄 4. args(arguments): 여러 개의 인수를 하나의 매개변수로 받을 때 5. Class: 수 많은 데이터에서 반복적인 처리 과정이 필요할 때Class가 하나의 부모 역할순서는 Class 정의 → 그 안에 속성을 정의 → 마지막 개체를 정의해주는 것이 key-point! [Python 해설강의]: 전체적으로 나는 정답을 내기 위해, 굉장히 '창의적'으로 코딩을 하고 있었다. 내가 이해한 선으로, 구글링 과정 중에 이해하면서 풀었는데, 사실 이게 맞는 방식인지도 모르겠다. 코드에도 따로 정답이 있는 건가..? 정답만 나오면 되지 않을까? 그런데 정답 코드를 보니 파이썬의 기초 함수.. 2024. 1. 10.