일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Chat GPT
- If
- 시각화
- 전처리
- 클러스터링
- jd
- 기초프로젝트
- lambda
- 데이터 분석
- SQLD
- 프롬프트 엔지니어링
- da
- streamlit
- SQL
- 히트맵
- 데이터분석
- pandas
- 태블로
- 머신러닝
- GA4
- 프로젝트
- 크롤링
- 군집화
- cross join
- 서브쿼리
- 팀프로젝트
- data analyst
- 최종 프로젝트
- Python
- 기초통계
- Today
- Total
목록데이터 분석 공부/Python (48)
세조목
여러 번 나눠서 돌려야하는 코드를 함수를 사용해서 한꺼번에 돌리는 경우가 종종 있습니다.금일 머신러닝 공부를 하면서도 그렇게 함수를 만들어서 코드를 돌렸는데요,이해가 되지 않는 부분이 있었습니다.def get_numeric_sc(df): from sklearn.preprocessing import StandardScaler, MinMaxScaler sd_sc = StandardScaler() mm_sc = MinMaxScaler() sd_sc.fit(train_df_2[['Fare']]) df['Fare_sd_sc'] = sd_sc.transform(df[['Fare']]) mm_sc.fit(train_df_2[['Age', 'Family']]) df[['Age_mm_sc', 'Family_..
df = df.assign(age2 = df['age'] +1,\ age3 = lambda df_ : df_['age2'] + 1) Series, Dataframe 만들기 Pandas는 Series와 Dataframe 두 개의 자료형을 제공한다. 아래와 같이 코드를 작성하여 Series와 Dataframe을 만들 수 있다. # Series df = pd.Series(data = ['john', 1], index=['name', 'age']) → 'data'와 'index'는 생략 가능 # Dataframe df = pd.DataFrame({'name' : ['a', 'b', 'c'], 'age' : [11, 35, 12]}) 데이터프레임을 만들때 index명을 별도로 지정해주고싶다면 아래와같이 입력해주면..
긴 코드 작성 코드의 길이가 길어질 경우 코드를 한 줄에 모두 작성하면 한 눈에 보기가 힘들기때문에 역슬래시(\) 또는 메서드 체이닝 방식을 활용하여 가독성을 높일 수 있다. * 메서드 체이닝 : 여러 개의 메서드를 체인처럼 연결해서 사용하는 것을 의미함 예를 들어 아래와 같은 코드가 있다고 했을때 multi_group_var = df.groupby(['year','continent'])['lifeExp', 'gdpPercap']].mean() 역슬래시를 활용하여 여러 줄에 나누면 아래와 같이 나타낼 수 있다. multi_group_var = df\ .groupby(['year','continent'])\ [['lifeExp', 'gdpPercap']].mean()\ .reset_index() 아래의 예..
lambda함수는 데이터프레임에 들어있는 각각의 값들을 하나 하나 함수에 넣어주고싶을때 사용한다. 예를 들어 아래와 같은 코드가 있다고해보자. data['startprice'].apply(lambda x: x * 100 if x % 1 == 0 else (x + 0.01) * 100) data라는 이름의 데이터프레임에 startprice라는 이름의 컬럼이 있다. startprice 컬럼에 여러 속성값들이 속해있을텐데 그 각각의 속성값들에 lambda x: 뒤에 적혀있는 조건을 걸어주는 것이다. x * 100 if x % 1 == 0 else (x + 0.01) * 100 이라고 적혀있는데 해석해보면 만약 x를 1로 나눴을때의 나머지가 0이라면 x * 100을, 그렇지 않다면 x에 0.01을 더해주고 그 ..